C# button点击button按钮就发送一个消息,设置循环,让这个消息每隔100ms就发送一次,不断循环发送。

unsafeprivatevoidbutton_Send_Click(objectsender,EventArgse){if(m_bOpen==0)return;VCI_... unsafe private void button_Send_Click(object sender, EventArgs e)
{
if(m_bOpen==0)
return;

VCI_CAN_OBJ sendobj = new VCI_CAN_OBJ();
//sendobj.Init();
sendobj.RemoteFlag = (byte)comboBox_FrameFormat.SelectedIndex;
sendobj.ExternFlag = (byte)comboBox_FrameType.SelectedIndex;
sendobj.ID = System.Convert.ToUInt32("0x"+textBox_ID.Text,16);
int len = (textBox_Data.Text.Length+1) / 3;
sendobj.DataLen =System.Convert.ToByte(len);
String strdata = textBox_Data.Text;
int i=-1;
if(i++<len-1)
sendobj.Data[0]=System.Convert.ToByte("0x" +strdata.Substring(i * 3, 2),16);
if (i++ < len - 1)
sendobj.Data[1]=System.Convert.ToByte("0x" +strdata.Substring(i * 3, 2),16);
if (i++ < len - 1)
sendobj.Data[2]=System.Convert.ToByte("0x" +strdata.Substring(i * 3, 2),16);
if (i++ < len - 1)
sendobj.Data[3]=System.Convert.ToByte("0x" +strdata.Substring(i * 3, 2),16);
if (i++ < len - 1)
sendobj.Data[4]=System.Convert.ToByte("0x" +strdata.Substring(i * 3, 2),16);
if (i++ < len - 1)
sendobj.Data[5]=System.Convert.ToByte("0x" +strdata.Substring(i * 3, 2),16);
if (i++ < len - 1)
sendobj.Data[6]=System.Convert.ToByte("0x" +strdata.Substring(i * 3, 2),16);
if (i++ < len - 1)
sendobj.Data[7] = System.Convert.ToByte("0x" + strdata.Substring(i * 3, 2), 16);

if(VCI_Transmit(m_devtype,m_devind,m_canind,ref sendobj,1)==0)
{
MessageBox.Show("发送失败", "错误",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
}
以上代码就是一段发送消息的代码,看不懂没关系,主要是要这一段代码每隔100ms就执行一次,循环不断发送。
展开
 我来答
百度网友977e726
2017-03-21 · TA获得超过244个赞
知道小有建树答主
回答量:350
采纳率:55%
帮助的人:123万
展开全部
放一个 time组件
bottom设置time 组件的布尔值
把需要运行的语句放到time的运行里面就行了
追问
能说具体点吗?
追答
抱歉 没装VS,循环发送 bottom不能实现,time可以,bottom的功能当做time的开关用的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式