比如说,我要让黑白两个画面快速切换,要如何才能做到?
先说说我自己的两个思路
1:利用timer 来回替换form的背景色....问题:如果间隔时间在100ms 或者以下, update()开始有明显闪烁....
2:调用DX控制屏的刷新率,然后通过显卡按帧输出画面(但是这个我不知道怎么实现....)各位能否帮帮忙给点意见.非常感谢了!

解决方案 »

  1.   

    黑白切换肯定会有感觉.换40ms,200ms也一样
    form用双缓冲,自己paint
      

  2.   

    实现方法:在C#的WinForm中有三个窗体   窗体frmOne(按钮btnOneOK)   
       窗体frmTwo(按钮btnTwoOK)
       窗体frmThree(按钮btnThreeExit)frmOne载入点击按钮btnOneOK时  把frmOne的属性 ShowInTaskbar 设置为 false
    然后frmTwo.show();
    frmTwo载入以后
    点击btnTwoOK时激活frmThree窗体
    这时如果点击按钮 btnTreeExit 时 用frmOne.ActiveForm.Close() 方法
    就可以关闭整个应用程序
      

  3.   

    实际上,我说的闪烁是那种明显从屏幕可以看到中间画面有裂开的移动纹路. 如何避免,因为我怀疑这是update()所引起的刷新闪烁.
    之前我有看到有人利用DirectX,直接通过显卡按帧送黑白(如60hz等这种高频). 完全没有任何撕裂感.这种的话如何可以达成呢?
      

  4.   

    每个窗体的Form.Designer.cs文件都有这么一段代码,试试在你操作窗体的时候挂起控件的逻辑布局,操作完成后强制对挂起的布局请求立即进行布局。
    this.SuspendLayout();
    //窗体操作
    this.ResumeLayout(false);试试看看能不能解决你的问题!~感觉这两个方法:第一个应该就是挂起窗体刷新,一个就是强制立即刷新窗体!