在同一个项目中链接DELPHI中的不同表单

Rya*_*bot 2 delphi oop pascal interface

我目前正在DELPHI 2010中设计一个数据库接口,我设计了几个表单接口,所有这些接口都封装在一个Delphi项目结构中.我首先开始设计一个特定的界面表格,结果,当我运行.exe文件时,首先出现一个不相关的表单,而我希望在加载程序时出现一个菜单表单.我的问题是:

  1. 当我运行编译项目的.exe时,如何让我的菜单表单首先打开?
  2. 我需要使用什么功能来编程此菜单上的导航按钮以打开新表格?
  3. 我应该在每个表单的"退出"按钮上使用什么功能来单独关闭表单,而不关闭整个程序?

我对Pascal有很好的了解,但我不熟悉在这个平台上编写面向对象的解决方案.

Ari*_*The 5

您应确定是否自动创建表单或按需创建表单.您还应该决定哪个表单是主表单.

如果您可以拥有同一类的多个打开表单,那么最常见的问题是,例如,如果您创建了"文件查看器"表单,则可能有意义为其中几个打开不同的文件.

对于自动创建的表单:

1.1打开项目源(.dpr文件,项目/查看源菜单)或在"表单"部分中打开"项目"选项.将MenuForm设置为创建列表中的第1个(最顶部).
1.2检查所有其他表格是否具有其.visible属性false

2:根据程序的逻辑,您应该使用Form1.Show或Form1.ShowModal

3:Self.Close或Self.Hide或Self.Visible:= false.更好的第一:http:
//docwiki.embarcadero.com/Libraries/XE2/en/Vcl.Forms.TCustomForm.Close如果您使用这些表单的OnClose事件 - 确保您没有更改关闭的默认caHide操作

对于手动终身控制形式:

1:打开项目源(.dpr文件,项目/查看源菜单)或在"表单"部分中打开"项目"选项.将MenuForm设置为唯一创建的.

2.1.some-temporary-variable := TFormClass.Create(Application);
2.2.然后你调整一些some-temporary-variable类似文件名的属性打开或一些数据源或其他什么.
2.3.然后你做some-temporary-variable.Showsome-temporary-variable.ShowModal.
注意:使用ShowModal可能会冻结您的应用程序,例如TFormClass.Create(SomeAnotherForm),使用Application for parent.

3:Self.Release http://docwiki.embarcadero.com/Libraries/XE2/en/Vcl.Forms.TCustomForm.Release
或Self.Close并caFree在OnClose事件中指定操作 - http://docwiki.embarcadero.com/Libraries /XE2/en/Vcl.Forms.TCustomForm.OnClose