2011-06-21 74 views
0

在.Net C++中,我想将串行输入写入UI上的文本框。但当然串行输入是在另一个线程上。我猜测我需要将委托传递给串行线程,当我创建它来运行名为updateTextBoxes的函数时。我试着做一个委托,如下所示,但是当创建委托时,我坚持我需要放入参数列表中。这些都在我的Form1类中。.NET C++从其他线程编写UI

 public delegate void MyDel(); 

     void updateTextBoxes() 
     { 
      this->local_long_textBox->Text = "Test!!!!!!!" 
     } 



private: void startUp() 
    { 
     MyDel^ DelInst; 
     DelInst = gcnew MyDel(??? what goes in here? 

回答

0

你会传递所需出于传递一个委托,设置Text属性的文本框中的构造

+0

哦,我明白了,我通过这个指针为实例和Form1 :: testFunc为第二个参数。万分感谢! – user758362

+0

因此,我现在可以创建委托并构建它,但是如何使用它。如何将委托传递给我调用的类。无论我尝试什么都会遇到编译错误。 – user758362

0

呼叫InvokeBeginInvoke的参数。

Invoke将在与文本框关联的线程上执行委托。 BeginInvoke做同样的,但异步。