利用向导(即New—Projects—MDI Application)创建MDI应用程序框架后,有一个功能是:创建一个子窗体时Windows菜单下会自动添加对应于本子窗体的菜单项,但是为什么在生成的源码中找不到任何实现这个功能的代码?这里的实现原理及方法我知道,就是动态生成菜单项,但是为什么在Delphi生成的源码中找不到相应的代码呢?难道那是可以自动完成的吗?如果是,请高手指明怎么做,如果不是,也请高手指明为什么源码中找不到相应的代码?

解决方案 »

  1.   

    怎么会没有呢,所有菜单的实现代码都在ActionList里,
    使用的时候在MainMenu的Menuitem设置ACtion属性就可以了。
    我不太相信你找不到相应的代码
      

  2.   

    请你也仔细的看一下ActionList有什么,你“不太相信”,那时你把别人看得太菜了吧。我希望有高手能回答这个问题。
      

  3.   

    是WINDOWS中FORM机制.你一旦设置为MDI方式,系统便会自动处理的.
      

  4.   

    我设置了MDIForm的WindowMenu属性还是不行啊?
      

  5.   

    MDI Form:object Form1: TForm1
      Left = 192
      Top = 107
      Width = 696
      Height = 480
      Caption = 'Form1'
      Color = clBtnFace
      Font.Charset = GB2312_CHARSET
      Font.Color = clWindowText
      Font.Height = -12
      Font.Name = '宋体'
      Font.Style = []
      FormStyle = fsMDIForm
      Menu = MainMenu1
      OldCreateOrder = False
      Position = poScreenCenter
      WindowMenu = Window1
      PixelsPerInch = 96
      TextHeight = 12
      object MainMenu1: TMainMenu
        Left = 72
        Top = 48
        object File1: TMenuItem
          Caption = 'File'
        end
        object Window1: TMenuItem
          Caption = 'Window'
          object itle1: TMenuItem
            Caption = 'Title'
          end
        end
      end
    end
    Child Form:
    object Form2: TForm2
      Left = 239
      Top = 227
      Width = 696
      Height = 480
      Caption = 'Form2'
      Color = clBtnFace
      Font.Charset = GB2312_CHARSET
      Font.Color = clWindowText
      Font.Height = -12
      Font.Name = '宋体'
      Font.Style = []
      FormStyle = fsMDIChild
      OldCreateOrder = False
      Position = poScreenCenter
      Visible = True
      PixelsPerInch = 96
      TextHeight = 12
    end如果还不行,留个Email 我发个Demo给你。