⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.pas

📁 这是一个DELPHI7应用案例开发篇有配套程序种子光盘
💻 PAS
字号:
unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls;

type
  TfrmMain = class(TForm)
    BottomPanel: TPanel;
    HSplitter: TSplitter;
    procedure BottomPanelDockDrop(Sender: TObject; Source: TDragDockObject;
      X, Y: Integer);
    procedure BottomPanelDockOver(Sender: TObject; Source: TDragDockObject;
      X, Y: Integer; State: TDragState; var Accept: Boolean);
    procedure BottomPanelGetSiteInfo(Sender: TObject; DockClient: TControl;
      var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
    procedure BottomPanelUnDock(Sender: TObject; Client: TControl;
      NewTarget: TWinControl; var Allow: Boolean);
    procedure FormCreate(Sender: TObject);
  private

  public
    procedure ShowBottom(Vis:Boolean);
  end;

var
  frmMain: TfrmMain;

implementation

uses DockWin;

{$R *.dfm}

procedure TfrmMain.BottomPanelDockDrop(Sender: TObject;
  Source: TDragDockObject; X, Y: Integer);
begin
    ShowBottom(True);
    BottomPanel.DockManager.ResetBounds(True);
end;

procedure TfrmMain.BottomPanelDockOver(Sender: TObject;
  Source: TDragDockObject; X, Y: Integer; State: TDragState;
  var Accept: Boolean);
var
    ARect : TRect;
begin
    Accept := Source.Control is TfrmDock;
    ARect.TopLeft := ClientToScreen(Point(0, ClientHeight*2 div 3));
    ARect.BottomRight := ClientToScreen(
        Point(ClientWidth, ClientHeight));
    Source.DockRect := ARect;
end;

procedure TfrmMain.BottomPanelGetSiteInfo(Sender: TObject;
  DockClient: TControl; var InfluenceRect: TRect; MousePos: TPoint;
  var CanDock: Boolean);
begin
    CanDock := DockClient is TfrmDock;
end;

procedure TfrmMain.ShowBottom(Vis: Boolean);
begin
    if Vis then
    begin
        if frmDock.HostDockSite=BottomPanel then
        begin
            BottomPanel.Height := ClientHeight div 3;
            HSplitter.Visible := True;
            BottomPanel.Top :=0;
            HSplitter.Top := BottomPanel.Top-5;;
        end;
        frmDock.Visible := True;
    end
    else
    begin
        BottomPanel.Height := 0;
        HSplitter.Visible := False;
    end;
end;

procedure TfrmMain.BottomPanelUnDock(Sender: TObject; Client: TControl;
  NewTarget: TWinControl; var Allow: Boolean);
begin
    Allow := True;
    ShowBottom(False);
end;

procedure TfrmMain.FormCreate(Sender: TObject);
begin
    frmDock := TfrmDock.Create(Application);
    frmDock.ManualDock(frmMain.BottomPanel,nil,alClient);
    frmDock.Visible := True;
end;

end.


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -