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

📄 unit1.pas

📁 Delphi高级界面特效制作百例源代码,这是随书源代码部分,不知可否
💻 PAS
字号:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ComCtrls, ExtCtrls, StdCtrls, ToolWin, Menus;

type
  TForm1 = class(TForm)
    MainMenu1: TMainMenu;
    file1: TMenuItem;
    open1: TMenuItem;
    save1: TMenuItem;
    A1: TMenuItem;
    N1: TMenuItem;
    E1: TMenuItem;
    E2: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    H1: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    A2: TMenuItem;
    procedure open1DrawItem(Sender: TObject; ACanvas: TCanvas;
      ARect: TRect; Selected: Boolean);
    procedure save1DrawItem(Sender: TObject; ACanvas: TCanvas;
      ARect: TRect; Selected: Boolean);
    procedure A1DrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect;
      Selected: Boolean);
    procedure E1DrawItem(Sender: TObject; ACanvas: TCanvas; ARect: TRect;
      Selected: Boolean);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

//菜单项要响应的事件
procedure TForm1.open1DrawItem(Sender: TObject; ACanvas: TCanvas;
  ARect: TRect; Selected: Boolean);
begin
     //选择颜色
     ACanvas.Brush.Color := clRed;

     //设置显示文字的格式
     ACanvas.TextFlags := ETO_OPAQUE;

     //填充颜色
     ACanvas.Rectangle(ARect.Left,ARect.Top,
             ARect.Left + ACanvas.TextExtent('打开(O)  Ctrl+O').cx,
             ARect.Top + ACanvas.TextExtent('打开(O)  Ctrl+O').cy);

     //写入文字
     ACanvas.TextOut(ARect.Left,ARect.Top+1,'打开(O)  Ctrl+O');
end;

//设计“保存”菜单项
procedure TForm1.save1DrawItem(Sender: TObject; ACanvas: TCanvas;
  ARect: TRect; Selected: Boolean);
begin
     //选择颜色
     ACanvas.Brush.Color := clAqua;

     //设置显示文字的格式
     ACanvas.TextFlags := ETO_OPAQUE;

     //填充颜色
     ACanvas.Rectangle(ARect.Left,ARect.Top,
             ARect.Left + ACanvas.TextExtent('保存(S)  Ctrl+S').cx,
             ARect.Top + ACanvas.TextExtent('保存(S)  Ctrl+S').cy);

     //写入文字
     ACanvas.TextOut(ARect.Left+1,ARect.Top+1,'保存(S)  Ctrl+S');   
end;

//设计“另存为”菜单项
procedure TForm1.A1DrawItem(Sender: TObject; ACanvas: TCanvas;
  ARect: TRect; Selected: Boolean);
begin
     //选择颜色
     ACanvas.Brush.Color := clBlue;

     //设置显示文字的格式
     ACanvas.TextFlags := ETO_OPAQUE;

     //填充颜色
     ACanvas.Rectangle(ARect.Left,ARect.Top,
             ARect.Left + ACanvas.TextExtent('另存为(A)...    ').cx,
             ARect.Top + ACanvas.TextExtent('另存为(A)...    ').cy);

     //写入文字
     ACanvas.TextOut(ARect.Left+1,ARect.Top+1,'另存为(A)...    ');
end;

//设计“退出”菜单项
procedure TForm1.E1DrawItem(Sender: TObject; ACanvas: TCanvas;
  ARect: TRect; Selected: Boolean);
begin
     //选择颜色
     ACanvas.Brush.Color := clFuchsia;

     //设置显示文字的格式
     ACanvas.TextFlags := ETO_OPAQUE;

     //填充颜色
     ACanvas.Rectangle(ARect.Left,ARect.Top,
             ARect.Left + ACanvas.TextExtent('退出(E)    ').cx,
             ARect.Top + ACanvas.TextExtent('退出(E)    ').cy);

     //写入文字
     ACanvas.TextOut(ARect.Left+1,ARect.Top+1,'退出(E)        ');
end;

end.

⌨️ 快捷键说明

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