六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

用Delphi制作動態菜單

[摘要]所謂動態菜單是指菜單項隨著程序的操作變化而變化�,F在,我們用Delphi來實現這一功能,具體步驟如下:  1.首先,確定動態菜單的數據來源,即要確定動態菜單標題是來自Windows的系統注冊表,還是來自一個數據庫,或者是來自一個子目錄,主要由程序的功能而定。這里假設主窗口名為MainForm,上面...
所謂動態菜單是指菜單項隨著程序的操作變化而變化。現在,我們用Delphi來實現這一功能,具體步驟如下:
  1.首先,確定動態菜單的數據來源,即要確定動態菜單標題是來自Windows的系統注冊表,還是來自一個數據庫,或者是來自一個子目錄,主要由程序的功能而定。這里假設主窗口名為MainForm,上面已有主菜單,其動態菜單的數據源是一個String(字符串)類型的變量,名稱為SubMenuItemSource。
  2.確定生成的動態菜單的功能,即定義動態菜單的OnClick()事件,例如,動態菜單標題來自一個磁盤文件名時,那么程序在響應OnClick()事件時,可能的操作是要打開選中的文件。因此,對菜單所在的主窗口模塊的單元程序的數,據我們需要定義Type后添加一個自定義的事件MyClick()。
  然后,需要編寫如下MyClick()事件的具體內容:
  procedure TMainForm.MyClick(Sender: TObject);//動態菜單OnClick事件響應
  begin
  Show.Message(TMenuItem(Sender).Caption);//顯示選中的動態菜單標題,
  end;
  這里調用的ShowMessage標準例程(在Dialogs.pas中)顯示TMenuItem(Sender).Caption,它就是選擇的菜單項的Caption,類似用TMenuItem(Sender).Name則是選擇菜單項的Name。
  3.編寫程序將動態菜單標題添加到指定的菜單頂下,并將其與OnClick()事件聯系起來。將以下程序段添加到MainForm的OnCreate事件過程中,可在程序啟動時完成動態菜單的動態生成:
  procedure TMainForm.FormCreate(Sender: TObject);
  var
  addSubItem:TMenuItem;
  i:Integer;
  begin
  for i:=0 to N do //N等于要添加的動態菜單數目,需事先定義為數值型變量,并賦值
  begin
  addSubItem:= TMenuItem.Create(Self);
  addSubItem.Name := ′A′+IntToStr(i);
  addSubItem.Caption := SubMenuItemSource; // 步驟1的SubMenuItemSource應先賦值
  FileOpenItem.Add(addSubItem); //在名稱為FileOpenItem的菜單項下添加子菜單
  addSubItem.OnClick:=MyClick; // 步驟2的MyClick(),自定義菜單要響應的事件
  end
  end;


主站蜘蛛池模板: 伊人剧场 | 无人码一区二区三区视频 | 亚洲丁香网 | 四虎伊人 | 污污免费视频 | 青草精品 | 日韩精品成人a在线观看 | 日本黄色片网址 | 有码日韩 | 日韩一级二级三级 | 日韩中文精品亚洲第三区 | 在线 v亚洲 v欧美v 专区 | 日韩性黄色一级 | 亚洲欧美激情综合第一区 | 日韩三级视频在线观看 | 午夜影院在线看 | 四虎影视在线影院4hu | 最新网址在线观看 | 欧美一级特黄一片免费 | 四虎精品视频 | 日韩欧美亚洲每日更新网 | 日本成人网址 | 色视频在线观看网站 | 亚洲欧美国产精品第1页 | 色噜噜狠狠狠综合曰曰曰88av | 亚洲影音 | 色婷婷5月精品久久久久 | 婷婷久久综合 | 小视频福利 | 中文字幕第23页 | 婷婷天天| 天堂网www在线资源链接 | 婷婷99精品国产97久久综合 | 最近新的免费韩国视频 | 午夜影皖 | 七七久久综合 | 啪啪福利 | 最近中文字幕无吗高清免费视频 | 最近中文字幕免费mv视频4 | 青草草在线 | 午夜视频在线观看www中文 |