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

📄 unit1.pas

📁 进行图纸的资料归档及管理
💻 PAS
字号:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, ComCtrls, ToolWin, abcmenu, AbcTCtls, AbcToolb, AbcTlbr,
  ImgList, Menus, FormCont,mmSystem, teForm,DBCtrls, jpeg;

type
  TMainform = class(TForm)
    Panel1: TPanel;
    Splitter1: TSplitter;
    ImageList1: TImageList;
    StatusBar1: TStatusBar;
    MainMenu1: TMainMenu;
    E1: TMenuItem;
    S1: TMenuItem;
    T1: TMenuItem;
    W1: TMenuItem;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    abcDock1: TabcDock;
    abcToolbar1: TabcToolbar;
    abcToolbarButton1: TabcToolbarButton;
    abcToolbarButton2: TabcToolbarButton;
    abcToolbarButton3: TabcToolbarButton;
    abcToolbarButton4: TabcToolbarButton;
    abcToolbarSep1: TabcToolbarSep;
    abcToolbarButton5: TabcToolbarButton;
    MYFormcontainer1: TFormContainer;
    abcToolbarButton6: TabcToolbarButton;
    abcToolbarButton7: TabcToolbarButton;
    abcToolbarButton8: TabcToolbarButton;
    abcToolbarButton9: TabcToolbarButton;
    abcToolbarSep2: TabcToolbarSep;
    FormTransitions1: TFormTransitions;
    procedure FormShow(Sender: TObject);
    procedure Panel1DockOver(Sender: TObject; Source: TDragDockObject; X,
      Y: Integer; State: TDragState; var Accept: Boolean);
    procedure Panel1DockDrop(Sender: TObject; Source: TDragDockObject; X,
      Y: Integer);
    procedure Panel1UnDock(Sender: TObject; Client: TControl;
      NewTarget: TWinControl; var Allow: Boolean);
    procedure Panel1GetSiteInfo(Sender: TObject; DockClient: TControl;
      var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
    procedure abcToolbarButton1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure abcToolbarButton8Click(Sender: TObject);
    procedure abcToolbarButton2Click(Sender: TObject);
    procedure abcToolbarButton9Click(Sender: TObject);
    procedure abcToolbarButton4Click(Sender: TObject);
    procedure abcToolbarButton3Click(Sender: TObject);
    procedure abcToolbarButton5Click(Sender: TObject);
   
  private
    { Private declarations }
    FCURRENTFORM:TFORM;
  public
   procedure ShowDockPanel(APanel: TPanel; MakeVisible: Boolean; Client: TControl);
   procedure setcurrentform(AFormClass : TFormClass);
    { Public declarations }
  end;

var
  Mainform: TMainform;
  Bitmap1: TBitmap;
  menuwidth:integer;
implementation
uses unit2,teWipe,teBlend,TransEff;
{$R *.DFM}

procedure TMainform.setcurrentform(AFormClass : TFormClass);
var  TransEffct: TTransitionEffect;
begin
if MYFormcontainer1.formcount<>0 then
begin
 if MessageDlg('关闭当前在处理的数据吗?', mtWarning,[mbYes,mbNo], 0 ) = mrYes then
    MYFormcontainer1.DestroyAllForms
 else
 abort;
end;
TransEffct := TBlendTransition.Create;
TransEffct.FlickerFreeWhenDisabled := True;
TransEffct.Milliseconds := 200;
try
FCurrentForm:=tForm(MYFormcontainer1.CreateForm(aFormclass));
//MYFormcontainer1.ShowFormex(FCurrentForm,True,TransEffct,nil,fcfanone);
MYFormcontainer1.ShowFormex(FCurrentForm,True,TransEffct,nil,fcfaclient);
finally
TransEffct.Free;
end;
end;

procedure TMainform.ShowDockPanel(APanel: TPanel; MakeVisible: Boolean; Client: TControl);
begin
  if not MakeVisible and (APanel.VisibleDockClientCount > 1) then
    Exit;

  if APanel = Panel1 then
    Splitter1.Visible := MakeVisible;
  if MakeVisible then
      if APanel = Panel1 then
      begin
        APanel.Width :=90;
        Splitter1.Left := APanel.Width + Splitter1.Width;
      end
      else begin
        APanel.Height := ClientHeight div 5;
      end
    else
      if APanel = Panel1 then
//      APanel.visible:=false
      APanel.Width := 0
      else
     //  APanel.visible:=false;
      APanel.Height := 0;
  if MakeVisible and (Client <> nil) then Client.Show;
end;


procedure TMainform.FormShow(Sender: TObject);
begin
menuform.panel1.borderwidth:=1;
menuform.show;
end;

procedure TMainform.Panel1DockOver(Sender: TObject; Source: TDragDockObject;
  X, Y: Integer; State: TDragState; var Accept: Boolean);
var
  ARect: TRect;
begin
//  Accept := Source.Control is TForm;
Accept :=true;
  if Accept then
  begin
    //Modify the DockRect to preview dock area.
    ARect.TopLeft := Panel1.ClientToScreen(Point(0, 0));
    ARect.BottomRight := Panel1.ClientToScreen(
      Point(80, Panel1.Height));
//    Point(PANEL1.Width, Panel1.Height));
    Source.DockRect := ARect;

  end;
end;

procedure TMainform.Panel1DockDrop(Sender: TObject; Source: TDragDockObject;
  X, Y: Integer);
begin
  if (Sender as TPanel).DockClientCount = 1 then
    ShowDockPanel(Sender as TPanel, True, nil);
menuform.Panel1.borderwidth:=1;
  (Sender as TPanel).DockManager.ResetBounds(True);

end;

procedure TMainform.Panel1UnDock(Sender: TObject; Client: TControl;
  NewTarget: TWinControl; var Allow: Boolean);
begin
 if (Sender as TPanel).DockClientCount = 1 then
    ShowDockPanel(Sender as TPanel, False, nil);
menuform.Panel1.borderwidth:=5;
end;

procedure TMainform.Panel1GetSiteInfo(Sender: TObject; DockClient: TControl;
  var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean);
begin
//CanDock := DockClient is TForm;
end;

procedure TMainform.abcToolbarButton1Click(Sender: TObject);
begin
if MessageDlg('退出系统吗?', mtWarning,[mbYes,mbNo], 0 ) = mrYes then
mainform.close;
end;

procedure TMainform.FormCreate(Sender: TObject);
var
TransEffct:TBlendTransition;
begin
DateSeparator :='-';
ShortDateFormat:='yyyy-mm-dd';
TwoDigitYearCenturyWindow:=70;
TransEffct := TBlendTransition.Create;
TransEffct.FlickerFreeWhenDisabled := True;
TransEffct.Milliseconds :=400;
FormTransitions1.ShowTransition := TransEffct;
menuwidth:=panel1.width;
end;

procedure TMainform.abcToolbarButton8Click(Sender: TObject);
begin
if panel1.width=1 then
   begin
   Splitter1.width:=4;
   Splitter1.visible:=true;
   panel1.width:=90;
   end
else
   begin
   panel1.width:=1;
   Splitter1.width:=1;
   Splitter1.visible:=false;

   end;
end;

procedure TMainform.abcToolbarButton2Click(Sender: TObject);
begin
 SendMessage(GetFocus,WM_PASTE,0,0);
end;

procedure TMainform.abcToolbarButton9Click(Sender: TObject);
begin
SendMessage(GetFocus,WM_UNDO,0,0);
end;

procedure TMainform.abcToolbarButton4Click(Sender: TObject);
begin
SendMessage(GetFocus,WM_COPY,0,0);
end;

procedure TMainform.abcToolbarButton3Click(Sender: TObject);
begin
SendMessage(GetFocus,WM_CUT,0,0);
end;

procedure TMainform.abcToolbarButton5Click(Sender: TObject);
var
  HWndCalculator : HWnd;
begin
  HWndCalculator := FindWindow(nil,'计算器'); // close the exist Calculator
  if HWndCalculator <> 0 then
    SendMessage(HWndCalculator, WM_CLOSE, 0, 0);
    WinExec('calc.exe',SW_SHOWNORMAL);

end;

end.

⌨️ 快捷键说明

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