请问能不能在窗口里用一个线程来创建按钮?

解决方案 »

  1.   

    线程对于VCL是不安全的除了canvas外,除非你调用synchronize()方法;应当可以,没有试过;
      

  2.   

    对...可以用Synchronize方法来实现,去看 <Delphi5.0开发人员手册>电子版吧...说得蛮详细的...
      

  3.   

    一般来说,要对控件进行操作都应把操作的过程交给主线程来做,这样就能安全了,所谓的不安全其实就是怕有两个或多个线程同时间对VCL对象进行写操作。
    你只要在线程中用synchronize()可以了,但我更喜欢用PostMessage的方法,自定义一个更新消息,当工作线程要更新VCL控件时,就PostMessage出去让主线程异步接收这个消息后由主线程去更新
      

  4.   

    其实有时候如果你“懒”的话,可以直接用工作线程更新VCL控件,一般来说不会出什么问题的,我就写过这样的小程序(更新StringGrid),用了很久都没有事。