如何将button.Clicked事件放到消息队列最后比如
itemchanged 事件 中有
...
if not check() then
begin
  提示信息函数();//---希望放到消息队列最后执行,
  还原(不接受输入值)
  ...
end;
...
...
怎么做呀

解决方案 »

  1.   

       提示信息函数();//---希望放到消息队列最后执行, 
    -->
       ::PostMessage(Self.Handle, WM_COMMAND, 0, Button1.Handle);
      

  2.   

    一意孤行
    我还想问,我不是控件的事件,而是procedure怎么办呀,可能还有参数
    简单点就象这样 PostMessage(Self.Handle, WM_COMMAND, 0, procedure(参数))
    这里20分全是你的,
    现在再+80分
    一并结
      

  3.   

    是procedure的话,就自定义一个消息,在这个消息处理函数中调用你的procedure.const
      WM_MYMSG = WM_USER + 100;type
      TForm1 = class(TForm)
      private
        procedure WMMyMsg(var tMsg: TMessage); message WM_MYMSG;  end;implementation
    { TForm1 }procedure TForm1.WMMyMsg(var tMsg: TMessage);
    begin
      // 这里调用你的procedure
    end;   PostMessage(Self.Handle, WM_MYMSG, 0, 0);