狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频

當前位置:系統之家 > 技術開發教程 > 詳細頁面

運用Delphi完成系統狀態欄圖標

運用Delphi完成系統狀態欄圖標

更新時間:2019-08-21 文章作者:未知 信息來源:網絡 閱讀次數:

  下面以一個具體的例子,詳細介紹一下利用Delphi實現系統狀態欄圖標的步驟和方法。

  1.創建一個應用程序,在主窗體上增加一個TpopupMenu組件。并為該彈出選單組件增加選單項Exit,標題為“退出”。  

  2.在Uses中添加ShellAPI,因為在系統狀態欄中增加圖標時需調用ShellAPI中的函數Shell_NotifyIconA。該函數需要兩個參數,其中一個是TnotifyIconDataA結構,需在主窗體中增加TnotifyIconDataA類型的全局變量ntida。  

  3.定義消息mousemsg,并編寫主窗體的mousemessage消息處理函數,此函數說明在圖標上用鼠標左鍵單擊時,會打開應用程序窗口;用鼠標右鍵單擊時,會彈出一個選單。  

  下面給出步驟2和3的實現代碼: 

  unit Unit1;
  interface
  uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls, Menus, shellapi;
  const
  mousemsg = wm_user + 1; //自定義消息,用于處理用戶在圖標上點擊鼠標的事件
  iid = 100; //用戶自定義數值,在TnotifyIconDataA類型全局變量ntida中使用
  type
  TForm1 = class(TForm)
  ......
  private
  //自定義消息處理函數,處理鼠標點擊圖標事件
  procedure mousemessage(var message: tmessage); message mousemsg;
  public
  { Public declarations }
  end;
  var
  Form1: TForm1;
  ntida: TNotifyIcondataA;
  //用于增加和刪除系統狀態圖標
  implementation
  {$R .DFM}
  procedure TForm1.mousemessage(var message: tmessage);
  var
  mousept: TPoint; //鼠標點擊位置
  begin
  inherited;
  if message.LParam = wm_rbuttonup then begin //用鼠標右鍵點擊圖標
  getcursorpos(mousept); //獲取光標位置
  popupmenu1.popup(mousept.x, mousept.y);
  //在光標位置彈出選單
  end;
  if message.LParam = wm_lbuttonup then begin //用鼠標左鍵點擊圖標
  //顯示應用程序窗口
  ShowWindow(Handle, SW_SHOW);
  //在任務欄上顯示應用程序窗口
  ShowWindow(Application.handle, SW_SHOW);
  SetWindowLong(Application.Handle, GWL_EXSTYLE,
  not (GetWindowLong(Application.handle, GWL_EXSTYLE)
  or WS_EX_TOOLWINDOW AND NOT WS_EX_APPWINDOW));
  end;
  message.Result := 0;
  end 

  5.編寫Tform1.OnClose的代碼如下:  

  procedure TForm1.FormClose(Sender:TObject; var Action: TCloseAction);
  begin
  Action := caNone; //不對窗體進行任何操作
  ShowWindow(Handle, SW_HIDE); //隱藏主窗體
  //隱藏應用程序窗口在任務欄上的顯示
  ShowWindow(Application.Handle, SW_HIDE);
  SetWindowLong(Application.Handle, GWL_EXSTYLE,
  GetWindowLong(Application.handle, GWL_EXSTYLE)
  or WS_EX_TOOLWINDOW AND NOT WS_EX _APPWINDOW);
  end;
  procedure TForm1.FormClose(Sender:TObject; var Action: TCloseAction);
  begin
  Action := caNone; //不對窗體進行任何操作
  ShowWindow(Handle, SW_HIDE); //隱藏主窗體
  //隱藏應用程序窗口在任務欄上的顯示
  ShowWindow(Application.Handle, SW_HIDE);
  SetWindowLong(Application.Handle, GWL_EXSTYLE,
  GetWindowLong(Application.handle, GWL_EXSTYLE)
  or WS_EX_TOOLWINDOW AND NOT WS_EX _APPWINDOW);
  end; 

  6.編寫Exit代碼如下:  

  當用戶點擊Exit時實現完全退出應用程序。具體代碼如下: 

  procedure TForm1.ExitClick(Sender:TObject);
  begin
  //為ntida賦值,指定各項參數
  ntida.cbSize := sizeof(tnotifyicondataa);
  ntida.wnd := handle;
  ntida.uID := iid;
  ntida.uFlags := nif_icon + nif_tip + nif_message;
  ntida.uCallbackMessage := mousemsg;
  ntida.hIcon := Application.Icon.handle;
  ntida.szTip := 'Icon';
  shell_notifyicona(NIM_DELETE, @ntida);
  //刪除已有的應用程序圖標
  Application.Terminate;
  //中斷應用程序運行,退出應用程序
  end  

  通過以上步驟,我們即可用Delphi輕松實現系統狀態欄圖標。

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

本類教程下載

系統下載排行

狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频
9191久久久久久久久久久| 欧美r级电影在线观看| 欧美成人一级视频| 国产精品第四页| 三级欧美在线一区| 不卡av电影在线播放| 亚洲美女一区| 欧美精品久久99| 亚洲欧美综合色| 黄网站免费久久| 极品av少妇一区二区| 欧美色涩在线第一页| 国产精品欧美久久久久无广告| 午夜精品影院在线观看| 成人h版在线观看| 国产日韩1区 | 亚洲一卡二卡三卡四卡| 国产成人aaa| 99精品国产一区二区青青牛奶| 欧美人xxxx| 亚洲日本一区二区| 国产麻豆精品95视频| 亚洲精品系列| 欧美电影精品一区二区| 一区二区久久久| 成人精品免费网站| 六月丁香综合| 国产午夜精品理论片a级大结局| 午夜电影网一区| 欧美伊人久久| 欧美日韩国产一级二级| 综合网在线视频| 国产精品一区二区无线| 国产精品区免费视频| 26uuu成人网一区二区三区| 日韩综合一区二区| 国语对白精品一区二区| 91精品婷婷国产综合久久性色 | 色婷婷国产精品综合在线观看| 久久久久国产精品麻豆 | 午夜在线观看免费一区| 久久青草欧美一区二区三区| 日韩高清一区在线| 亚洲一二三区精品| 日韩三级av在线播放| 日韩黄色片在线观看| 国产综合激情| 日韩无一区二区| 青青草国产成人99久久| 亚洲日本精品国产第一区| 精品黑人一区二区三区久久| 免费在线看成人av| 99精品国产99久久久久久福利| 久久久一区二区| 国产一区二三区| 久久久一二三| 亚洲欧美一区二区三区久本道91| www.日韩精品| 欧美精品日韩一区| 丝袜美腿高跟呻吟高潮一区| 在线欧美视频| 国产亚洲女人久久久久毛片| 国产麻豆精品在线| 91久久精品网| 亚洲在线视频一区| 欧美三区美女| 久久久噜噜噜久噜久久综合| 国产精品自拍一区| 91国产精品成人| 亚洲国产精品麻豆| 99国产成+人+综合+亚洲欧美| 久久久国产一区二区三区四区小说| 国产一区在线精品| 色噜噜偷拍精品综合在线| 一级中文字幕一区二区| 亚洲成人在线视频网站| 国产欧美视频一区二区三区| 成人黄色一级视频| 在线成人小视频| 久久99九九99精品| 色菇凉天天综合网| 午夜视频一区在线观看| 亚洲深爱激情| 一区二区三区久久久| 亚洲精品在线二区| ...av二区三区久久精品| 欧美精品二区三区四区免费看视频| 精品国产欧美一区二区| 成人免费高清在线| 日韩女同互慰一区二区| 国产电影精品久久禁18| 91超碰这里只有精品国产| 国产在线国偷精品免费看| 欧美日韩精品综合在线| 美日韩一区二区| 欧美性受极品xxxx喷水| 强制捆绑调教一区二区| 日本道精品一区二区三区| 日本女人一区二区三区| 日本精品裸体写真集在线观看 | 色噜噜狠狠成人网p站| 欧美日韩国产影片| 日日摸夜夜添夜夜添精品视频 | 欧美不卡一区二区三区四区| 国产 欧美在线| 日韩欧美中文字幕精品| 高清不卡一二三区| 欧美大片在线观看一区| 成人性生交大片| 欧美精品一区视频| 91麻豆福利精品推荐| 国产色综合久久| 欧美视频1区| 亚洲天堂av老司机| 99综合精品| 午夜精品久久久久久久蜜桃app| 久久亚洲一区| 美女一区二区视频| 欧美三级一区二区| 国产乱人伦精品一区二区在线观看| 在线播放欧美女士性生活| 国产精品888| 精品国产乱码久久久久久影片| 99久久精品国产导航| 欧美极品aⅴ影院| 黄色成人精品网站| 日韩美女视频一区| 翔田千里一区二区| 麻豆精品一区二区综合av| 欧美日韩精品系列| 丰满亚洲少妇av| 国产日韩欧美麻豆| 亚洲国产高清视频| 午夜影院久久久| 欧美三级三级三级爽爽爽| 懂色av中文字幕一区二区三区 | 欧美日韩精品免费看| 亚洲精品免费在线| 一本在线高清不卡dvd| 精品一区二区免费| 日韩免费观看2025年上映的电影| 欧美激情1区2区3区| 亚洲日本欧美天堂| 久久久夜夜夜| 国产91综合网| 国产精品久久久久久久久免费相片| 在线天堂一区av电影| 免费成人av在线| 日韩午夜电影av| 伊人久久婷婷| 日本欧美久久久久免费播放网| 日韩一卡二卡三卡四卡| 欧美激情视频一区二区三区免费| 一区二区三区在线观看欧美| 欧美综合天天夜夜久久| 成人精品一区二区三区中文字幕| 国产精品无人区| 久久精品主播| 成人午夜短视频| 亚洲蜜臀av乱码久久精品| 在线观看日韩av先锋影音电影院| 成人福利在线看| 亚洲精选视频在线| 欧美日韩美少妇| 欧美精品首页| 欧美性色黄大片| 高清日韩电视剧大全免费| 国产精品美女久久久久久2018| 久久久久在线| 成人精品小蝌蚪| 亚洲精品免费电影| 欧美精品丝袜中出| 精品成人免费| 美女看a上一区| 国产日本亚洲高清| 久久久噜噜噜| 97精品国产露脸对白| 亚洲一区二区三区中文字幕在线| 884aa四虎影成人精品一区| 国产精品v欧美精品v日本精品动漫| 亚洲成人av资源| 精品国精品国产尤物美女| 国产精品日韩一区二区| 国产成人av一区二区三区在线 | 精品国产一区二区三区四区四| 国产日韩欧美三级| 国产很黄免费观看久久| 亚洲欧美一区二区三区国产精品 | 国产在线乱码一区二区三区| 国产精品久久精品日日| 欧美三级一区二区| 黄色成人在线网站| 国产尤物一区二区| 尤物视频一区二区| 欧美成人r级一区二区三区| 国产精品有限公司| 不卡一区二区三区四区| 亚洲国产精品久久不卡毛片| 久久丝袜美腿综合| 久久久99爱|