日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

控制系統菜單

控制系統菜單

更新時間:2022-04-30 文章作者:未知 信息來源:網絡 閱讀次數:

----WINDOWS附帶的時鐘程序有這樣一個特點:它的"Alwaysontop"選項是加在系
統菜單中的,這一技巧為該程序增色不少,同時也增加了其神秘感。我們
在程序設計時能否把自己的菜單項加入系統菜單呢?回答是肯定的,筆者
用Delphi方便的實現了這一功能。

----為實現這一功能,需要解決兩個問題:①、如何把用戶菜單項加入系統
菜單,②、如何才能響應這一菜單項。

----要解決第一個問題,就需要獲取系統菜單的句柄,這一點可用API函數
getsystemmenu()來獲取(getmenu()只能獲取用戶菜單句柄),有了系統菜單句柄,便
可以用API函數appendmenu()向系統菜單中加入用戶菜單選項了。

----要解決第二個問題,需要重載WM_SYSCOMMAND或WM_MENUSELECT消息。我們
知道,當用戶從菜單中選一項時,系統便會發出WM_COMMMAND消息,而對
于系統菜單,則會發出WM_SYSCOMMAND消息,重載這個消息,并判斷選中菜
單的ID值是否為用戶設定值便可以了。Delphi為我們提供了這方面的機制,使
我們能方便的實現這一功能。當然,為實現這一功能我們還可以利用子類
或為系統加消息鉤子的方法來解決。

----為了便于實現,在這里,我們采用重載WM_SYSCOMMAND消息和填寫
WM_MENUSELECT消息結構的方法來實現這一功能。

----下面為筆者為實現這一功能而開發的實例。

----程序在Delphi  ver1.0下調試通過。

program Psysmenu;
uses
  Forms,
  Sysmenu in '\SYSMENU.PAS' {Form1};

{$R *.RES}
begin
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.

unit Sysmenu;

interface
uses
  SysUtils, WinTypes, WinProcs, Messages, Classes,
  Graphics, Controls,Forms, Dialogs;
type
  TForm1 = class(TForm)
        procedure FormCreate(Sender: TObject);
  private
      procedure  user_sysmenu(var msg:twmmenuselect);
                               message wm_syscommand;

  public
        { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.DFM}

procedure  TForm1.user_sysmenu(var msg:TWMMENUSELECT);
begin
   if msg.iditem=100 then
      showmessage('     響應系統菜單!')
      { 也 可 以setwindowpos()來實現處于最前端功能}
   else
      inherited;     { 作缺省處理,必須調用這一過程}
end;

procedure TForm1.FormCreate(Sender: TObject);
   var hmenu:integer;
begin
   hmenu:=getsystemmenu(handle,false);
   {獲取系統菜單句柄}
   appendmenu(hmenu,MF_SEPARATOR,0,nil);
   appendmenu(hmenu,MF_STRING,100,'加入系統菜單');
   {加入用戶菜單}
end;
end. 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

主站蜘蛛池模板: 日韩欧美国产精品第一页不卡 | 日本免费观看日本高清视频 | 天天操天天干天天透 | 国产精品怡红院永久免费 | 日韩精品一区二区三区毛片 | 久久久久久久国产免费看 | 日韩免费不卡 | 久久美女福利视频 | 精品成人免费一区二区在线播放 | 亚洲欧美日韩国产一区二区三区精品 | 日韩城人视频 | 免费观看日本 | 精品久久久久久中文 | 亚洲欧美日韩精品久久久 | 日本在线视频一区二区三区 | 日韩一区二区天海翼 | 韩日视频在线 | 欧美久久超级碰碰碰二区三区 | 久久久久日韩精品免费观看网 | 一区二区三区视频在线观看 | 巨胸美女狂喷奶水www网麻豆 | 久久精品国产99久久6动漫欧 | 哚哚影视理论片第三页 | 五月深深爱 | 国产日本欧美高清免费区 | 亚洲国产欧美在线人成aaa | 久久99亚洲精品一区二区 | 91成人精品视频 | 精品国产综合区久久久久久 | 伊人久久中文字幕久久cm | 欧美亚洲国产精品久久 | www.夜夜操.com| www.色播.com | 国产79av| 久草美女视频 | 午夜精品在线免费观看 | 在线观看午夜视频 | 精品国产国产综合精品 | 国产精品久久久久久夜夜夜夜 | 精品久久久久久综合另类小说 | 成人福利在线观看免费视频 |