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

📄 wzjh41.htm

📁 对于学习很有帮助
💻 HTM
字号:
<html>

<head>
<title>用Delphi制作动态菜单</title>
<meta content="text/html;CHARSET=gb2312" http-equiv="Content-Type">
<style type="text/css">.font {
	FONT-SIZE: 9pt; LINE-HEIGHT: 13pt
}
.bfont {
	FONT-SIZE: 11pt; LINE-HEIGHT: 13pt
}
A:link {
	COLOR: #0080c0; CURSOR: hand; FONT-STYLE: normal; TEXT-DECORATION: none
}
A:visited {
	COLOR: #0080c0; FONT-STYLE: normal; TEXT-DECORATION: none
}
A:active {
	COLOR: rgb(255,0,0); FONT-STYLE: normal; TEXT-DECORATION: none
}
A:hover {
	COLOR: red; TEXT-DECORATION: underline
}
</style>
<script LANUGAGE="JavaScript">

<!--

function pop(pageurl) {

  var

popwin=window.open(pageurl,"popWin","scrollbars=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,resizable=no,width=650,height=450");

  return false;

}

//-->

</script>

<style type="text/css">TD {
	FONT-FAMILY: "宋体"; FONT-SIZE: 9pt
}
BODY {
	FONT-FAMILY: "宋体"; FONT-SIZE: 9pt
}
SELECT {
	FONT-FAMILY: "宋体"; FONT-SIZE: 9pt
}
A {
	COLOR: white; FONT-FAMILY: "宋体"; FONT-SIZE: 9pt; TEXT-DECORATION: none
}
A:hover {
	COLOR: #3300ff FONT-FAMILY: "宋体"; FONT-SIZE: 9pt; TEXT-DECORATION: underline
}
</style>
<SCRIPT language=Javascript1.2 src="../best.js"></SCRIPT>

<SCRIPT language=JavaScript>
<!--- hide script from old browsers
var ie=0;browserName=navigator.appName.substring(0,27);
if (browserName=="Microsoft Internet Explorer") {ie=1;} if (ie) {document.bgColor="#ffffff";}
// -- End Hiding Here -->
</SCRIPT>

<META content="Microsoft FrontPage 4.0" name=GENERATOR>
<SCRIPT>var Flag=0</SCRIPT>
<body link="#008000" vlink="#008000" bgcolor="#FFFFFF">
<div align="center"><center>
    <table border="0" width="750" bgcolor="#FFFFFF" bordercolorlight="#FFFFFF" bordercolordark="#FFFFFF">
      <tr>
        <td width="100%"> 
          <table border="0" width="100%" cellspacing="1" bgcolor="#FFFFFF">
            <tr bgcolor="#FFFFFF"> 
              <td width="100%" height="133"> 
                <p align="center"><strong> 《 用Delphi制作动态菜单 》 </strong></p>
                <div align="center"> 
                  <center>
                    <table border="0" width="650" bgcolor="#5BADFF"
        cellspacing="1" cellpadding="2">
                      <tr> 
                        <td width="100%" bgcolor="#FFFFFF" colspan="6"><br>
                            所谓动态菜单是指菜单项随着程序的操作变化而变化。现在,我们用Delphi来实现这一功能,具体步骤如下: 
                          <br>
                            1.首先,确定动态菜单的数据来源,即要确定动态菜单标题是来自Windows的系统注册表,还是来自一个数据库,或者是来自一个子目录,主要由程序的功能而定。这里假设主窗口名为MainForm,上面已有主菜单,其动态菜单的数据源是一个String(字符串)类型的变量,名称为SubMenuItemSource。 
                          <br>
                            2.确定生成的动态菜单的功能,即定义动态菜单的OnClick()事件,例如,动态菜单标题来自一个磁盘文件名时,那么程序在响应OnClick()事件时,可能的操作是要打开选中的文件。因此,对菜单所在的主窗口模块的单元程序的数,据我们需要定义Type后添加一个自定义的事件MyClick()。 
                          <br>
                            然后,需要编写如下MyClick()事件的具体内容: <br>
                            procedure TMainForm.MyClick(Sender: TObject);//动态菜单OnClick事件响应 
                          <br>
                            begin <br>
                            Show.Message(TMenuItem(Sender).Caption);//显示选中的动态菜单标题, 
                          <br>
                            end; <br>
                            这里调用的ShowMessage标准例程(在Dialogs.pas中)显示TMenuItem(Sender).Caption,它就是选择的菜单项的Caption,类似用TMenuItem(Sender).Name则是选择菜单项的Name。 
                          <br>
                            3.编写程序将动态菜单标题添加到指定的菜单顶下,并将其与OnClick()事件联系起来。将以下程序段添加到MainForm的OnCreate事件过程中,可在程序启动时完成动态菜单的动态生成: 
                          <br>
                            procedure TMainForm.FormCreate(Sender: TObject); <br>
                            var <br>
                            addSubItem:TMenuItem; <br>
                            i:Integer; <br>
                            begin <br>
                            for i:=0 to N do //N等于要添加的动态菜单数目,需事先定义为数值型变量,并赋值 <br>
                            begin <br>
                            addSubItem:= TMenuItem.Create(Self); <br>
                            addSubItem.Name := ′A′+IntToStr(i); <br>
                            addSubItem.Caption := SubMenuItemSource; // 步骤1的SubMenuItemSource应先赋值 
                          <br>
                            FileOpenItem.Add(addSubItem); //在名称为FileOpenItem的菜单项下添加子菜单 
                          <br>
                            addSubItem.OnClick:=MyClick; // 步骤2的MyClick(),自定义菜单要响应的事件 
                          <br>
                            end <br>
                            end; <br>
                          (李晓方) <br>
                        </td>
                      </tr>
                    </table>
                  </center>
                </div>
              </td>
            </tr>
          </table>
        </td>
  </tr>
</table>
    <td width="100%" height="50" colspan="2">&nbsp;</td>    
</center></div>
</body>
</html>

<script LANUGAGE="JavaScript">
<!--
function getCookieVal (offset) {  
var endstr = document.cookie.indexOf (";", offset);  
if (endstr == -1)    
endstr = document.cookie.length;  
return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) {  
var arg = name + "=";  
var alen = arg.length;  
var clen = document.cookie.length;  
var i = 0;  
while (i < clen) {    
var j = i + alen;    
if (document.cookie.substring(i, j) == arg)      
return getCookieVal (j);    
i = document.cookie.indexOf(" ", i) + 1;    
if (i == 0) break;   
}  
return null;
}
function SetCookie (name, value) {  
var argv = SetCookie.arguments;  
var argc = SetCookie.arguments.length;  
var expires = (argc > 2) ? argv[2] : null;  
var path = (argc > 3) ? argv[3] : null;  
var domain = (argc > 4) ? argv[4] : null;  
var secure = (argc > 5) ? argv[5] : false;  
document.cookie = name + "=" + escape (value) + 
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + 
((path == null) ? "" : ("; path=" + path)) +  
((domain == null) ? "" : ("; domain=" + domain)) +    
((secure == true) ? "; secure" : "");
}

if (GetCookie("MMC_PoiLove") != "ifght94567") {
window.open("http://www.21pop.com/pop.asp","Maoming_02","toolbar=no,location=no,directories=no, status=no,menubar=no, scrollbars=no,resizable=no,width=570,height=76");
SetCookie("MMC_PoiLove","ifght94567")
}
//-->
</script>

⌨️ 快捷键说明

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