1,我用    FMain.WindowState := wsMaximized来实现最大化功能,遇到一点小问题
窗口只是在原地变成1024X768,而不是满屏幕显示!(PS:我的窗口BORDERSTYLE属性是BSNONE我把这段代码写在了PANEL上)2,如何在PANEL上写移动窗口的代码,谢谢
解决了立即给分

解决方案 »

  1.   

    WM_SYSCOMMAND 
    SC_MAXIMIZE (or SC_ZOOM) Maximizes the window.
    SC_MINIMIZE (or SC_ICON) Minimizes the window.
    SC_RESTORE Restores the window to its normal position and size.SendMessage(Handle,WM_SYSCOMMAND ,SC_.....,0);
      

  2.   

    第二个是什么意思,是说无标题栏移动窗口吗procedure WMLBUTTONDOWN(var msg:tmessage);message WM_LBUTTONDOWN;procedure TForm1.WMLBUTTONDOWN(var msg:tmessage);
    begin
      perform(WM_NCLBUTTONDOWN,HTCAPTION,0);
    end;
      

  3.   

    //窗口只是在原地变成1024X768
    //我把这段代码写在了PANEL上
    //如何在PANEL上写移动窗口的代码我看不懂这三句话。
      

  4.   

    最大化
    shellexecute(handle,'open',pchar('D;\a.exe'),nil,nil,SW_MAXIMIZE);在panel上推动窗体
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, Buttons, ExtCtrls;type
      TForm1 = class(TForm)
        BitBtn1: TBitBtn;
        Panel1: TPanel;
        procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
          Shift: TShiftState; X, Y: Integer);
        procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
          Y: Integer);
        procedure FormMouseUp(Sender: TObject; Button: TMouseButton;
          Shift: TShiftState; X, Y: Integer);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;
      CanMove: Bool;
      OldX,OldY: Integer;implementation{$R *.dfm}procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      if Button=MbLeft then
        CanMove:=True;
      OldX:=X;
      OldY:=Y;
    end;procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
      if CanMove then
        begin
          Form1.Left:=Form1.Left+X-OldX;
          Form1.Top:=Form1.Top+Y-OldY;
        end;
    end;procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      CanMove:=False;
    end;end.把panel的MouseDown,MouseMove,MouseUp事件分别和窗体的相关事件关联就行了。
      

  5.   

    2、procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      ReleaseCapture;
      SendMessage(Self.Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
    end;
      

  6.   

    呵呵,都讲完了:)
    其实Google上有很多例子的