ユーザーコントロールディスプレイの作り方[WIN]を点滅させないでください。

ユーザーコントロールディスプレイの作り方[WIN]を点滅させないでください。


序文

4.0を.NETに.NET 1.1のWindowsフォームのプログラムをアップグレードする前に、オープニング画面での結果は、フラッシュは非常に興味を持っている!そこで彼は、ソリューションを探し始めました。

研究と決意

セットの真のDoubleBuffer =を見つけるために始めた、これは画面オブジェクトの多くは、塗装!それともことUSER感である場合は特に、NBで4年前に上記のハイエンド機での使用の少し、それでも同じ問題を抱えていますとき~~

その後、それを行うために彼の方法によると、「どのようにユーザーコントロールのちらつきを修正する」が見つかり、それは本当に大丈夫のパフォーマンスです!

彼の方法は、以下のような手順があり、フォーム内にあり、CreateParamsをオーバーライドし、ユーザーコントロールを

フォーム上のコード

C#の

保護オーバーライドCreateParamsをCreateParamsを{
  取得する {
    CreateParamsをCP = base.CreateParams。
    cp.ExStyle | = 0x02000000; // WS_EX_COMPOSITEDをオンにします
    CPを返します。
  }
} 


VB

保護されたオーバーライドReadOnlyプロパティCreateParamsをとしてSystem.Windows.Forms.CreateParams
    取得する
        CreateParamsを= MyBase.CreateParamsとして暗いCP
        cp.ExStyle = cp.ExStyleまたは&H2000000
        「WS_EX_COMPOSITEDをオンにします
        戻りCP
    エンドゲット
エンドプロパティ


ユーザーコントロール的コード

C#の

保護オーバーライドCreateParamsをCreateParamsを{
  取得する {
    varが=のbase.CreateParamsをPARMS。
    parms.Style&=〜0x02000000; // WS_CLIPCHILDRENをオフにします
    PARMSを返します。
  }
}


VB

保護されたオーバーライドReadOnlyプロパティCreateParamsをとしてSystem.Windows.Forms.CreateParams
    取得する
        System.Windows.Forms.CreateParams = MyBase.CreateParamsとしてPARMS薄暗いです
        「WS_CLIPCHILDRENをオフにします
        parms.Style =(parms.Styleそして(未&H2000000))
        PARMSを返します。
    エンドゲット
エンドプロパティ


健康:

XPマシンで1、ボーダーは表示されません!

2.それともフォーム&H2000000に追加が有効であることができる、その期間のコードを追加する必要もありませんユーザーコントロール!

3.フォームまたは&H2000000に参加しませんが、ユーザーコントロールと(未&H2000000)に参加するために単語のがある場合は、ラベルが画面に表示されますが、状況から出てきません!

参考データ:ユーザーコントロールでのちらつきを修正する方法

:元大列が  ユーザーコントロールディスプレイの作り方[WIN]を点滅しません


おすすめ

転載: www.cnblogs.com/petewell/p/11489711.html