有Message了还不好办
自定义几个消息,
在.WndProc事件里作相应的操作

解决方案 »

  1.   

      Label1.Perform(WM_SETTEXT, 0, Longint(PChar('It is so easy!')));
      Label1.Perform(CM_TEXTCHANGED, 0, 0);
      

  2.   

    to:zengyufeng(御风)
    Label1.Perform(CM_TEXTCHANGED, 0, 0);  //这句没起作用;
    我的用法是Perform(CM_TEXTCHANGED, 0, Longint(PChar('It is so easy!')));
    不知道对不对
    还想请教,Perform在线程里安全吗?
      

  3.   

    其实这段代码就是TControl.SetTextBuf的实现,我只是照搬过来罢了。
    多看看Delphi自己的源代码吧,很多问题你都可以从里边找到答案的!这里的Perform实际上就是SendMessage,只不过Label的Handle没有公开,才改用Perform的。
    SendMessage是线程安全的,所以这个也一样。
      

  4.   

    to:zengyufeng(御风)
    Label1.Perform(CM_TEXTCHANGED, 0, 0);  //这句没起作用;
    我的用法是Perform(CM_TEXTCHANGED, 0, Longint(PChar('It is so easy!')));
    对不对?
    怎么改?
    谢谢您!
      

  5.   

    WM_XXXX的意思是什么?窗口管理!
    label不是窗口。
      

  6.   

    to:BigBen(江南草)
    您说得对,但我用Label1.Perform(WM_SETTEXT, 0, Longint(PChar('It is so easy!')));
    起了作用,请明示,我很菜。
      

  7.   

    为什么不直接写“label1.caption:='text'”?