乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      如何消除MDI主窗體在創(chuàng)建MDI子窗體時的閃爍

       kenwang 2007-05-17
      看看這個對你有沒有用吧
      作者: 輕舞肥羊
      標題: 解決MDI子窗體建立時動畫閃爍問題
      關(guān)鍵字: MDI
      分類: 開發(fā)經(jīng)驗
      密級: 公開
      (評分: , 回復: 0, 閱讀: 262) »»
      MDI子窗體如果在設(shè)計期最大化,那么在建立窗體的時候會有一個從普通狀態(tài)到最大化的動畫
      過程,如果MDI子窗體上的控件太多則會發(fā)生比較強的閃爍現(xiàn)象,下面實現(xiàn)一個基類解決此問題,
      機制是通過鎖定MDI主窗口的更新來實現(xiàn),缺點是要引用MDI主窗體或使用全局變量記錄句柄.
      http://www./delphibbs/dispq.asp?lid=2066407

      type
        TFrmBaseMDIChild = class(TForm)
        public
          constructor Create(AOwner: TComponent);reintroduce;override;
        end;

      constructor TFrmBaseMDIChild.Create(AOwner: TComponent);
      begin
        //MDIMainForm為MDI主窗體,如果不想引用,可以用全局變量保存
        LockWindowUpdate(MDIMainForm.Handle);
        try
          inherited;
        finally
          LockWindowUpdate(0);
        end;
      end;

      另外一種解決方法(好象有問題,有待測試)
      覆蓋CreateNew方法來解決,缺點是設(shè)計期指定的FormState屬性無效.
      一定要在代碼中指定.否則覆蓋這個方法就失去了意義.
      type
        TFrmBaseMDIChild = class(TFrmBase)
        public
          constructor CreateNew(AOwner: TComponent; Dummy: Integer = 0);reintroduce;override;
        end;

      constructor TFrmBaseMDIChild.CreateNew(AOwner: TComponent; Dummy: Integer);
      begin
        inherited;
        WindowState :=  wsMaximized; //這里指定狀態(tài)為最大化,不會產(chǎn)生閃爍
      end;
       

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多