如何共用外观相同的FORM,可以做公共的类吗?
如何操作,谢谢。
如何操作,谢谢。
解决方案 »
- 自己写的一个控件,它有一个对象属性和其他一些基本属性,为什么对象属性前面有“+”号,但打开没内容呢?
- 请问如何搜索到局域网内所有的机器(得到名称和IP),并且如何把机器上指定位置的文件拷贝到本机?(Up有分!)
- ····呼唤高手····
- 关于打包
- 求一个关于时间的公式或函数?
- 图片显示
- 有关数据库查询问题,选中combobox里的来查询相应的列
- 50分求购清空收藏夹和临时文件夹的源程序!!!!!
- 请问在Adoquery控件中Sql语句使用日期型参数??
- 哪里有下载经过中文改过的FASTREPORT2.4正式版?
- 怎样激活已知句柄窗体! 在线等 谢谢!
- 有没有人能告诉我在哪能找到Delphi的一些好用的第三方控件啊!?
在 newForm 的时候从你的项目里选已经存在的窗体就行了
如MODEFORM是自己设好的窗体
TForm1 = class(TMODEFORM)
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uBaseBrowsfrm, ActnList, RM_Common, RM_Class, RM_GridReport,
RM_System, RM_Dataset, DB, DBClient, Grids, DBGridEh, RzTabs, RzStatus,
RzPanel, StdCtrls, RzCmboBx, ExtCtrls, RzButton, Mask, RzEdit, RzDBEdit,
RzDBBnEd;type
TfrmBaseBrows_AppEmployee = class(TfrmBaseBrows)
Label9: TLabel;
Label8: TLabel;
Label7: TLabel;
Label6: TLabel;
Label5: TLabel;
Label4: TLabel;
Label3: TLabel;
Label2: TLabel;
Label15: TLabel;
Label14: TLabel;
Label13: TLabel;
Label12: TLabel;
Label11: TLabel;
Label10: TLabel;
dsn_workdate: TRzDBDateTimeEdit;
dsn_tel: TRzDBEdit;
dsn_status: TRzDBEdit;
dsn_mobile: TRzDBEdit;
dsn_leavedate: TRzDBDateTimeEdit;
dsn_Hqid: TRzDBEdit;
dsn_emptype: TRzDBEdit;
dsn_emprealName: TRzDBEdit;
dsn_empName: TRzDBEdit;
dsn_empid: TRzDBEdit;
dsn_deptid: TRzDBEdit;
dsn_birthday: TRzDBDateTimeEdit;
dsn_addr: TRzDBEdit;
dsn_braid: TRzDBButtonEdit;
Label1: TLabel;
dsn_braname: TRzDBEdit;
procedure FormCreate(Sender: TObject);
procedure dsn_braidButtonClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
frmBaseBrows_AppEmployee: TfrmBaseBrows_AppEmployee;implementation
uses uBaseBrows_AppEmployeeBusiness ,uPublicSelectValue;{$R *.dfm}procedure TfrmBaseBrows_AppEmployee.FormCreate(Sender: TObject);
begin
inherited;
FBaseBrowsBusiness :=TBaseBrows_AppEmployeeBusiness.create;
end;procedure TfrmBaseBrows_AppEmployee.dsn_braidButtonClick(Sender: TObject);
begin
inherited;
if not SelectvalueObject.SelectValue(50,Getscreenpoint(Tcontrol(sender))) then
begin
Exit;
end;
if not (FBaseBrowsBusiness.Dataset.State in [dsedit,dsInsert] ) then
FBaseBrowsBusiness.Dataset.Edit; dsn_braid.Field.AsString := SelectvalueObject.KeyVaule ;
dsn_BraName.Field.AsString := SelectvalueObject.ListVaule ;
end;initialization
RegisterClass(TfrmBaseBrows_AppEmployee);
ActivateClassGroup(TfrmBaseBrows_AppEmployee);
finalization
UnRegisterClass(TfrmBaseBrows_AppEmployee);
end.
1.新建,找到你当前工程项目,选择inherited from TPublicform
2.新建一个Form,更改Tform1 = class(TForm)更改为TForm1 = class(TPublicform)
新建,File-new-other-你当前的工程名 找到Publicform,OK就行。
这是最简单的。里边的东西该继承的需要些inherited.
FrmBase(提供整个项目与UI元素相关的基础类)
FrmLoginCustom(继承自FrmBase)
FrmLogin(继承自FrmLoginCustom)
与之相类的窗体可直接从FrmLoginCustom继承
趁热再贪问一下,那父FORM的函数要怎么写才可重用性好呢?