困扰已久的窗体继承问题!(100分送人)
在实际应用中遇到窗体继承问题,困扰已久,故在此处发贴,希望能有高手帮助解决!
工程中有两个基类窗体BaseGrid和BaseEdit,分别是一个表格窗体和一个编辑窗体,而且表格窗体与编辑窗体是存在调用和被调用的关系,即在表格窗体上点新增或是修改按钮,会把编辑窗体显示出来进行操作,因为其他窗体基本上都是从这两个窗体继承而来且基本功能相同,故想偷偷懒,只在基类中写事件代码,但又不知该如何写。以下是我的部分代码及说明!
例如有4个继承窗体分别为FrmGrid1,FrmGrid2,FrmEdit1,FrmEdit2
在BaseGrid里写了一个过程,
procedure TFrmBaseGrid.ShowEditForm(FormClass:TFrmBaseEdit;sState:String);
var
Form:TFrmBaseEdit;
begin
Form:=FormClass.Create(application);
with Form do
begin
ActiveDs.DataSet:=QueryGrid;
if sState='sInsert' then
ActiveDs.DataSet.Append
else
ActiveDs.DataSet.Edit;
ShowModal;
end;
end;
然后分别在FrmGrid1,FrmGrid2中调用ShowEditForm(FrmEdit1,'sInsert');ShowEditForm(FrmEdit2,'sInsert');但调用时显示FrmEdit1和TFrmBaseEdit不是同一类,FrmEdit1不是从TFrmBaseEdit继承来的吗,怎么会这样,请高手帮忙指点一下并能给出解决方法
工程中有两个基类窗体BaseGrid和BaseEdit,分别是一个表格窗体和一个编辑窗体,而且表格窗体与编辑窗体是存在调用和被调用的关系,即在表格窗体上点新增或是修改按钮,会把编辑窗体显示出来进行操作,因为其他窗体基本上都是从这两个窗体继承而来且基本功能相同,故想偷偷懒,只在基类中写事件代码,但又不知该如何写。以下是我的部分代码及说明!
例如有4个继承窗体分别为FrmGrid1,FrmGrid2,FrmEdit1,FrmEdit2
在BaseGrid里写了一个过程,
procedure TFrmBaseGrid.ShowEditForm(FormClass:TFrmBaseEdit;sState:String);
var
Form:TFrmBaseEdit;
begin
Form:=FormClass.Create(application);
with Form do
begin
ActiveDs.DataSet:=QueryGrid;
if sState='sInsert' then
ActiveDs.DataSet.Append
else
ActiveDs.DataSet.Edit;
ShowModal;
end;
end;
然后分别在FrmGrid1,FrmGrid2中调用ShowEditForm(FrmEdit1,'sInsert');ShowEditForm(FrmEdit2,'sInsert');但调用时显示FrmEdit1和TFrmBaseEdit不是同一类,FrmEdit1不是从TFrmBaseEdit继承来的吗,怎么会这样,请高手帮忙指点一下并能给出解决方法
...全文
相关推荐
ACCESS窗体100例
ACCESS窗体100例 显示并激活已打开应用程序 按字母分类 字符串跑马灯: "running Text" ? 本文框的拖放(调用mdlDragDrop模块) 自动计算日期 ............ 绝对经典
QSS陷阱解密:为什么你的QPushButton样式总被意外覆盖?
本文深入解析了Qt开发中QPushButton样式被意外覆盖的常见问题,详细介绍了QSS选择器权重体系、样式冲突的七大典型场景及解决方案。通过权重计算、调试技巧和工程化建议,帮助开发者有效解决QSS样式冲突,提升界面开发效率。特别针对QPushButton等自定义控件的样式设计提供了实用方法论。
Qt QGraphicsView实战:从场景(Scene)到视图(View)的坐标转换避坑指南
本文深入解析Qt QGraphicsView中场景(Scene)、视图(View)和图元(Item)三套坐标系统的转换原理与实战技巧。通过详细的代码示例和典型问题解决方案,帮助开发者避免常见的坐标转换陷阱,实现精准的图形交互功能,提升Qt图形应用的开发效率。
告别Winform默认丑按钮!用MaterialSkin快速打造Material Design风格界面(附图标避坑指南)
本文介绍了如何使用MaterialSkin库快速美化Winform界面,告别默认丑按钮,打造符合Material Design风格的UI。通过详细配置步骤和图标避坑指南,帮助C#开发者轻松实现专业级按钮样式和主题适配,提升应用视觉效果和用户体验。
设置子窗体相对父窗体打开的位置
资源是用MFC创建的子窗体打开时,设定其打开位置与相对父窗体的位置。免积分。谢谢。


