• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

加一个菜单项到Windows的系统菜单_Delphi

Delphi 搞代码 3年前 (2018-08-09) 109次浏览 已收录 0个评论

为什么Windows的系统菜单总是一成不变?这个例子教你如何往系统菜单添加一个菜单项如about或information等。
    这个例子将一个菜单项加到系统菜单中去。我们需要两个东西,一个是项名,这可以是如何整数;我们还需要一个程序去收取Windows对确认点击我们创建的菜单项的信息。

Unit OhYeah;

Interface

Uses
    SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs, Menus;

http://www.gaodaima.com/?p=65888加一个菜单项到Windows的系统菜单_Delphi

Type
   TForm1 = Class (TForm)
      Procedure FormCreate (Sender : TObject);
          Private {Private declarations}
   Public {Public declarations}
      Procedure WinMsg (Var Msg : TMsg; Var Handled : Boolean);
      Procedure DoWhatEever;

End;

Var
   Form1 : TForm1;

Implementation

{$R *.DFM}

Const
     ItemID = 99; // 这个ID number代表你的菜单项,可以是任何值。

Procedure Tform1.WinMsg (Var Msg : TMsg; Var Handled : Boolean);

Begin
     If Msg.Message = WM_SYSCOMMAND Then
        If Msg.WParam = ItemID Then DoWhatEver;

End;

Procedure TForm1.FormCreate (Sender : TObject);

Begin
     Application.OnMessage := WinMsg;
     AppendMenu (GetSystemMenu (Form1.Handle, False), MF_SEPARATOR, 0, ”);
     AppendMenu (GetSystemMenu (Form1.Handle, False), MF_BYPOSITION, ItemID, ‘&My menu’);
     AppendMenu (GetSystemMenu (Application.Handle, False), MF_SEPARATOR, 0, ”);
     AppendMenu (GetSystemMenu (Application.Handle, False), MF_BYPOSITION, ItemID,’&My menu minimized’);

End;

Procedure TForm1.DoWhatEver;

Begin
     Exit; //你可以添加任何你想加的东西到这里
End;

End.

欢迎大家阅读《加一个菜单项到Windows的系统菜单_Delphi,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址