有几个paintbox,怎么希望他们的Onpaint事件按自己希望的顺序发生,因为某一个pb必须用到另一个pb的全局变量,怎么做啊?

解决方案 »

  1.   

    比如说有三个窗体中有三个Paintbox,在创建窗体时会触发他们的Onpaint事件,但他们谁的OnPaint事件先发生就不知道了,比如我想要Paintbox1的Onpaint事件比Paintbox2的Onpaint事件先发生,这个怎么做?
      

  2.   

    这个好像跟创建顺序有关,即拖放控件的顺序有关。
    你可以这样试试
    控件:pb1,pb2,pb3
    顺序:pb2,pb3,pb1
    先将pb3,pb1的Visible属性设置成False;
    然后再pb2的Onpaint事件中将pb3的Visible设为True;在pb3的Onpaint事件中将pb1的Visible设为True;
      

  3.   

    加一个标记,p1,p2,p3:boolean;
    M每个OnPaint事件中判断px是否为true,如果为false,不执行,然后在第一个Onpaint完成后,执行
    p2:=True;Paintbox2.Invalidate(这个将触发第二个的Onpaint事件,因为p2:=true,所以会被执行);第二个执行完,写第三个
      

  4.   

    好像是先创建的先执行。
    我说的那个顺序只是举个例子。
    你也可以试试bdmh老大的方法,也可以。
      

  5.   

    好像是先创建的先执行。
    我说的那个顺序只是举个例子。
    你也可以试试bdmh老大的方法,也可以。
      

  6.   

    好像是先创建的先执行。
    我说的那个顺序只是举个例子。
    你也可以试试bdmh老大的方法,也可以。