登录
首页 » Delphi源码 » Delphi 在程序运行过程中动态添加菜单

Delphi 在程序运行过程中动态添加菜单

于 2022-03-22 发布 文件大小:7.21 kB
0 190
下载积分: 2 下载次数: 1

代码说明:

Delphi创建动态菜单,在程序运行过程中动态添加菜单,点击“添加菜单”按钮,会在菜单栏中增加一个“编辑”菜单项,预设中每次添加的菜单项都是“编辑”,这也是为了验证不要添加重复的菜单项,代码中的判断是一种方法,另外也可以通过菜单项的Caption属性来判断,不过之前最好设置AutoHotkeys和AutoLineReduction为maManual。在以下创建菜单项的代码中:   self.MainMenu1.AutoHotkeys:=maManual;   self.MainMenu1.AutoLineReduction:=maManual;   通过设置这两个属性可以禁止程序自动为菜单生成热键,否则程序会自动在菜单的Caption属性中加入热键,并且会修改Caption属性的值,给通过Caption属性判断菜单项带来麻烦。

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • Delphi 单击StringGrid列进行排序
    Delphi 单击StringGrid列进行排序,StringGrid行的任意列单击,就会重新排序一次,排序规则可以自己定义,这种排序功能可有效提升StringGrid显示数据的易用性,增强其功能,提升用户体验,本例子源代码相当简单,对学习者也有很好的帮助作用。参见以下代码:   begin    if Button = mbRight then Exit;    TStringGrid(Sender).MouseToCell(X, Y, vCol, vRow);    if (vRow < 0) or (vRow >= TStringGrid(Sender).FixedRows) then Exit;    StringGridRowSort(TStringGrid(Sender), vCol, vOldCol = vCol);    if vOldCol = vCol then    vOldCol := - vOldCol    else    vOldCol := vCol;   end;
    2022-05-29 23:30:47下载
    积分:1
  • Delphi 获取网页
    Delphi 获取网页源代码,这个程序首先是一个网页浏览器,可解析用户输入的网址,直接输出网页界面,然后通过操作主窗口区的Tab选项,查看该网页的源代码,也就是完成了两种功能:1、网页浏览器,2、查看源代码。运行界面如下图示。
    2023-05-24 10:50:03下载
    积分:1
  • Delphi Canvas.Brush为窗体绘制渐变背景
    Delphi 为窗体绘制渐变背景,这里使用了Delphi中的Canvas.Brush.Color来实现窗口背景的渐变色,不错吧?如示例图的左右渐变效果,实现的代码:   for i:=0 to self.Width-1 do   begin   c1:=GetRValue(StartColor)+Trunc(i*(GetRValue(EndColor)-GetRValue(StartColor))/(self.Width-1));   c2:=GetGValue(StartColor)+Trunc(i*(GetGValue(EndColor)-GetGValue(StartColor))/(self.Width-1));   c3:=GetBValue(StartColor)+Trunc(i*(GetBValue(EndColor)-GetBValue(StartColor))/(self.Width-1));   Canvas.Brush.Color:=RGB(c1,c2,c3);   //每次画矩形的画刷颜色   Dct:=Rect(i,0,i+1,self.Height);   //每次刷绘的矩形区域   Canvas.FillRect(Dct);   //填充颜色   end;
    2022-05-24 21:26:59下载
    积分:1
  • Delphi 实现图像热点功能
    Delphi 实现图像热点功能,实现一张图片上不同形状区域的热点,定义椭圆形、四边形、三角形的区域变量的热点,相关代码如下:   var    thepoint:array [1..8] of tpoint;//存储多边形顶点坐标    count:integer;    pointnum:array [1..2] of integer;   begin   //四边形顶点坐标,首末点封闭    thepoint[1]:=point(135,99);    thepoint[2]:=point(105,183);    thepoint[3]:=point(129,201);    thepoint[4]:=point(188,92);    thepoint[5]:=point(135,99);    count:=5;//四边形顶点数目,首末点为一点    fourE_rgn:=CreatePolygonRgn(thepoint,count,WINDING);//生成四边形区域    elli_rgn:=CreateEllipticRgn(64,221,231,263);// 生成椭圆形区域    //第一个三角形顶点坐标    thepoint[1]:=point(118,67);    thepoint[2]:=point(32,28);    thepoint[3]:=point(17,90);    thepoint[4]:=point(118,67);    //第二个三角形顶点坐标    thepoint[5]:=point(155,44);    thepoint[6]:=point(202,91);    thepoint[7]:=point(277,44);    thepoint[8]:=point(155,44);    pointnum[1]:=4;//第一个三角形顶点数目    pointnum[2]:=4;//第二个三角形顶点数目    count:=2;//三角形数目   //生成由两个三角形构成的三角形区域   tri_rgn:=CreatePolyPolygonRgn(thepoint,pointnum,count,WINDING);   end;
    2022-01-26 08:02:50下载
    积分:1
  • Delphi开发的模型飞机测控平台 附
    Delphi开发的模型飞机测控平台 附源代码,里面主要涉及多线程操作、GPS、传感器、端口操作等一系列系统控制的技巧,还包括了许多操作函数,比如绘制飞行轨迹的函数、绘制坐标刻度的函数、用户界面读取发送数据指令的函数、还有线程的同步、线程互斥等。   由于有调试目的,如果要求发送字符格式的数据,就直接发送用户输入的字符串,其他情况下,都是发送打包好的数据矩阵。   调用其它函数实现发送串口数据的功能。注意函数GetData还没有实现线程的互斥,目的是把发送的数据保存在各个线程中。   在此提示: 由于传输系统总会有一定的吴码率,那么为了避免轨迹图出现问题,例如坐标范围过大需要除去粗大误差,考虑到模型飞机的飞行速度不会超过10m/s,考虑到数子传输系统的下传速度,设定如果位置变化超过20m就去掉。
    2022-08-16 19:54:45下载
    积分:1
  • Delphi getTime 获取当前日期时间实例
    Delphi getTime 获取当前日期时间,用的是DateTimeToStr,运行本窗口后,自动获取当前电脑上的时间,显示在窗体指定的Lable标签中,这是核心的源代码:   procedure TForm1.Timer1Timer(Sender: TObject);   begin    Label1.Caption := DateTimeToStr(now());   end;
    2022-11-15 02:10:03下载
    积分:1
  • Delphi 读写物理扇区——实模式
    Delphi 读写物理扇区——实模式, asm //以下汇编代码中,只有第一参数、第二参数、pFunc的值是需要改变的,其余都是固定的写法    pushad    push ebp //#2,保存ebp    sub esp,$2c //#1,预留2c字节的栈空间    push Int13Reg16 //第一参数,如果没有参数,则不用push    //第二参数,如果没有参数,则不用push    mov edx, pFunc //函数地址    mov ebp,esp //    add ebp,$2c //ebp校正,是作者分析QT_Thunk时发现的    call QT_Thunk    add esp,$2c //#1,释放上面预留的2c字节的栈空间    pop ebp //#2,恢复ebp    mov byte ptr @result,al    popad    end;
    2022-01-24 18:37:58下载
    积分:1
  • Delphi 创建Excel表格文件
    Delphi 读取SQLSERVER数据库内容,并创建Excel表格文件,将内容导出到excel文件中,核心同样是基于createoleobject对象的excel.application方法实现,创建EXECEL对象 ,添加comobj单元,用循环加入记录,将数据表导入到Excel表中,正式开始EXECEL输出。
    2022-02-15 04:17:26下载
    积分:1
  • Delphi窗口淡入淡出渐变fadein fadeout动画效果
    Delphi实现窗口的淡入淡出渐变fadein fadeout动画效果,除了渐变,还有其它的动画形式,比如从中心扩散、水平从左到右、水平从右到左、垂直从上到下、垂直从下到上等。本实例默认状态下是使用了淡入淡出渐变,其它动画效果被注释掉了,如果你想用,可以去掉注释标记。   //淡入效果   //AnimateWindow(self.Handle,1000,AW_CENTER or AW_ACTIVATE);   //从中心扩散   //AnimateWindow(self.Handle,1000,AW_HOR_POSITIVE or AW_ACTIVATE);   //AnimateWindow(self.Handle,1000,AW_SLIDE or AW_HOR_POSITIVE or AW_ACTIVATE);   //水平从左到右   //AnimateWindow(self.Handle,1000,AW_HOR_NEGATIVE or AW_ACTIVATE);   //AnimateWindow(self.Handle,1000,AW_SLIDE or AW_HOR_NEGATIVE or AW_ACTIVATE);   //水平从右到左   //AnimateWindow(self.Handle,1000,AW_VER_POSITIVE or AW_ACTIVATE);   //AnimateWindow(self.Handle,1000,AW_SLIDE or AW_VER_POSITIVE or AW_ACTIVATE);   //垂直从上到下   //AnimateWindow(self.Handle,1000,AW_VER_NEGATIVE or AW_ACTIVATE);   //AnimateWindow(self.Handle,1000,AW_SLIDE or AW_VER_NEGATIVE or AW_ACTIVATE);   //垂直从下到上
    2022-06-11 17:51:21下载
    积分:1
  • Delphi 渐变的RGB空心色环绘制演示
    Delphi渐变圆形的实现方法,RGB色环空心绘制演示源码:   oBmp := TBitmap.Create; //为了代码整齐就不写try了   oBmp.PixelFormat := ABitmap.PixelFormat;   oBmp.Width := ABitmap.Width;   oBmp.Height := ABitmap.Height;   BitBlt(oBmp.Canvas.Handle, 0, 0, oBmp.Width, oBmp.Height, ABitmap.Canvas.Handle, 80, 80, SRCCOPY); //要拷贝的位图   oRgn := CreateEllipticRgn(0, 0, 100, 100); //创建圆形区域   SelectClipRgn(ABitmap.Canvas.Handle, oRgn); //选择剪切区域   ABitmap.Canvas.Draw(0, 0, oBmp); //位图位于区域内的部分加载
    2022-03-21 13:09:53下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载