在两个窗口如form1 和 form2 当我切换它们的时候from2总是回一下系统画面.这会有闪一下的感觉。请帮解决一下我发了n次但无解!
我写的是form2.show;我的窗体上有很多图片的。是不是显存的原因?我这想过可是用64mddr的显卡测试后也有闪的所以只好请大家帮个忙了!
有人说form1.hide后再form2.show;这种方法闪的更大。
所以我想是否有这样的方法将form2的图片及其它的控件先加入内存后,然后再show呢!
可我就是不知写在form的什么even下。请指教!

解决方案 »

  1.   

    这样试试。。
    Perform(WM_SETREDRAW, 0, 0); //锁屏幕
    form2.show;
    Perform(WM_SETREDRAW, 1, 0); //解锁屏幕并重画
    RedrawWindow(Handle, Nil, 0, RDW_FRAME + RDW_INVALIDATE +
           RDW_ALLCHILDREN + RDW_NOINTERNALPAINT);
      

  2.   

    我现在只有一个办法.先form2.show;至于图片一个一个显示我就不管了这样至少不会出现闪出系统画面了.不知是不是delphi自己的问题.窗口上的图和控件多了.窗体切换的时候就会先出现背景然后再显示.这样很不好.
    还是请大家出个好点子吧