怎样让MDIChild的窗体打开时,出现闪动,即刚开始出现时较小,紧跟着最大化。

解决方案 »

  1.   

    OnActivat事件中写实现代码即可
      

  2.   

    procedure TForm1.FormShow(Sender: TObject);
    begin
      AnimateWindow (Handle, 500, 16);
    end;
      

  3.   

    那你说的闪动是什么现象,你发个源码来看看,怎么我没见过mdichild有什么闪动。
      

  4.   

    闪动开始出现时较小(wsNormal状态),紧跟着最大化(wsMaxinum)。
      

  5.   

    procedure TMainFrm.N15Click(Sender: TObject);
    begin
      lockwindowupdate(handle);  
      //......你以前的代码
      lockwindowupdate(0);
    end;
    //你应该在设计时应该将子窗体的WindowState设置为wsMaximized;
    保证不闪;给分吧!
      

  6.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, ExtCtrls, Buttons;type
      TForm1 = class(TForm)
        Button1: TButton;
        Timer1: TTimer;
        BitBtn1: TBitBtn;
        BitBtn2: TBitBtn;
        procedure Button1Click(Sender: TObject);
        procedure Timer1Timer(Sender: TObject);
        procedure BitBtn1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    begin
       timer1.Enabled:=true;
    end;procedure TForm1.Timer1Timer(Sender: TObject);
    begin
        FlashWindow(Form1.Handle,true);
        //beep;
    end;procedure TForm1.BitBtn1Click(Sender: TObject);
      var
        DesDC:THandle;
    begin
        DesDC:=FindWindow('ProgMan',nil);
        ShowWindow(DesDc,SW_HIDE);
    end;end.