根据主菜单生成脚本

原创 2006年06月02日 09:36:00

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Menus, DB, ADODB;

type
  TForm1 = class(TForm)
    con1: TADOConnection;
    mm1: TMainMenu;
    N11: TMenuItem;
    N12: TMenuItem;
    N31: TMenuItem;
    N41: TMenuItem;
    N51: TMenuItem;
    N61: TMenuItem;
    N561: TMenuItem;
    N71: TMenuItem;
    N72: TMenuItem;
    N81: TMenuItem;
    N91: TMenuItem;
    btn1: TButton;
    mmo1: TMemo;
    procedure btn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure GetMenu(AIndex: string; Menu: TMenuItem);
    procedure SaveMenu(Index: string;Menu: TMenuItem);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.GetMenu(AIndex: string; Menu: TMenuItem);
var i: integer;
begin
  for i := 0 to Menu.Count - 1 do
  begin
    if Menu.Items[i].Count = 0 then
      SaveMenu(AIndex + IntToStr(i + 1) ,Menu.Items[i])
    else
      GetMenu(AIndex + IntToStr(i + 1),  Menu.Items[i]);
  end;
end;

procedure TForm1.SaveMenu(Index: string;Menu: TMenuItem);
begin
  mmo1.Lines.Add('Insert into ZDMenu (MENUID, MENUNAME, C_TAG) values (' + QuotedStr(Index) + ','
          + QuotedStr(Menu.Caption) + ',' + IntToStr(Menu.Tag) + ')');
end;

procedure TForm1.btn1Click(Sender: TObject);
var i: integer;
begin
  mmo1.Clear;
  for i := 0 to mm1.Items.Count - 1 do
  begin
     GetMenu(IntToStr(i + 1), mm1.Items[i]);
  end;
end;

end.

 

 

object Form1: TForm1
  Left = 309
  Top = 143
  Width = 696
  Height = 480
  Caption = 'Form1'
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'MS Sans Serif'
  Font.Style = []
  Menu = mm1
  OldCreateOrder = False
  PixelsPerInch = 96
  TextHeight = 13
  object btn1: TButton
    Left = 32
    Top = 120
    Width = 75
    Height = 25
    Caption = 'btn1'
    TabOrder = 0
    OnClick = btn1Click
  end
  object mmo1: TMemo
    Left = 192
    Top = 24
    Width = 473
    Height = 377
    Lines.Strings = (
      'mmo1')
    TabOrder = 1
  end
  object con1: TADOConnection
    Left = 256
    Top = 224
  end
  object mm1: TMainMenu
    Left = 144
    Top = 72
    object N11: TMenuItem
      Caption = '1'
      object N12: TMenuItem
        Caption = '1'
      end
      object N31: TMenuItem
        Caption = '3'
      end
    end
    object N41: TMenuItem
      Caption = '4'
      object N51: TMenuItem
        Caption = '5'
      end
      object N61: TMenuItem
        Caption = '6'
      end
    end
    object N561: TMenuItem
      Caption = '56'
      object N71: TMenuItem
        Caption = '7'
      end
      object N72: TMenuItem
        Caption = '7'
        object N81: TMenuItem
          Caption = '8'
        end
        object N91: TMenuItem
          Caption = '9'
        end
      end
    end
  end
end

Shell脚本编程之创建文本菜单

Shell脚本编程之创建文本菜单
  • dadaxiaoxiaode
  • dadaxiaoxiaode
  • 2016年06月11日 15:32
  • 1727

权限管理系统中的根据用户角色动态生成用户权限菜单树

权限管理系统中的根据用户角色动态生成用户权限菜单树        暑假在工作室学习了基于RBAC的权限管理系统,学的比较浅显,记录下方便以后学习可以看。         一、首先讲讲我对RBA...
  • dabai_cai
  • dabai_cai
  • 2017年10月03日 15:46
  • 472

根据数组生成联动菜单树

根据数组生成联动菜单树一级Id为负数、parentId为空,二级parentId等于一级id,三级parentId等于二级id:[{"name": "广东","Id": -1,"parentId": ...
  • MajorMayer
  • MajorMayer
  • 2016年08月31日 16:01
  • 643

根据hibernate配置文件生成数据库建表脚本

import org.hibernate.cfg.AnnotationConfiguration; import org.hibernate.cfg.Configuration; import o...
  • zhang434
  • zhang434
  • 2013年08月27日 15:08
  • 1417

根据json数据生成建表脚本的解决方案

开发中,经常需要调用各种接口,而大部分接口都以json格式返回数据。 前段时间,有个需求,需要将json数据保存进数据库,而根据json数据建立相应的数据库表是个很耗体力的工作,所以决定开发一个小工...
  • tiana0
  • tiana0
  • 2016年12月01日 10:28
  • 1897

自动生成导航栏和菜单的解决方案

自动生成导航栏和菜单的解决方案   系统是常见的左右结构的系统,左边是bootstrap的菜单,右边是内容页,内容页的顶部是导航,以前的做法是直接和菜单导航栏在页面里写死,但是后期改起来很不方便,后来...
  • zw521cx
  • zw521cx
  • 2017年04月17日 23:46
  • 710

C语言入门(二)主菜单操作

(一)、主菜单 在Turbo C 2.0主屏幕顶上一行, 显示下列内容:  File Edit Run Compile Project Options Debug Break/watch  除Ed...
  • caihongdao123
  • caihongdao123
  • 2016年07月11日 15:20
  • 2338

PowerDesigner中批量根据对象的name生成comment的脚本

PowerDesigner中将对象中的name写到comment中,如果comment不为空,将name加在comment前面   执行方法:Open PDM -- Tools -- Execut...
  • leizhoubin
  • leizhoubin
  • 2011年10月26日 16:12
  • 921

linux菜单脚本

Python Code  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 3...
  • qq_22945615
  • qq_22945615
  • 2017年11月21日 13:23
  • 59

PowerDesigner修改建库脚本的方法,尤其是外键生成方式

 PowerDesign的使用主要是DBMS的配置  1、修改建表脚本生成规则。如果每个表格都有相同的字段,可以如下修改:  Database -> Edit Current DBMS 展开...
  • seven_zhao
  • seven_zhao
  • 2014年01月13日 17:35
  • 837
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:根据主菜单生成脚本
举报原因:
原因补充:

(最多只允许输入30个字)