窗体继承问题

little06 2007-01-15 03:37:44
我一直用java来开发的
现在正用delphi 开发点东西
遇到的问题是:
我做了一个基本的窗体,里面有按钮等
并且有函数和过程

现在想通过写一个继承函数,动态的把这个窗体重载,并对一些函数或者按钮的属性,方法进行覆盖

问:delphi能否做到呢
如何做。。
谢谢,不够分,我再开贴给多一百分

最好有简单的例子进行说明
...全文
537 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
little06 2007-01-17
  • 打赏
  • 举报
回复
谢谢,已经解决
才子鸣 2007-01-16
  • 打赏
  • 举报
回复
學到了繼承!
jianke5555 2007-01-15
  • 打赏
  • 举报
回复
Delphi中把你新建的每一个窗体作为一个类,其实它们都是从基类TForm继承而来:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;

type
TForm1 = class(TForm)
...

如果需要继承已经存在的窗体(类),只要在新建的窗体中指定其父类即可:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Unit1;

type
TForm2 = class(TForm1)
...

这时你会发现Form2的每一个事件中就会有'inherited;',即是对Form1的继承部分:
procedure TForm2.FormCreate(Sender: TObject);
begin
inherited;

end;
liyuan_user 2007-01-15
  • 打赏
  • 举报
回复
dctony
兄弟说的对.继承后可以自己覆盖的.
dctony 2007-01-15
  • 打赏
  • 举报
回复
完全没问题,讲一下怎么做.
1.新建一个Application,在Form上放好控件,该写的代码也都写上,编译通过.
2.点新建,选中'Project1'页签,双击'Form1',这时会新建一个窗体'Form2',并且Form2是继承Form1.
do2008 2007-01-15
  • 打赏
  • 举报
回复
1.窗体继承问题

完全没有问题。
在Delphi中,所谓的窗体,其实也就是从TForm继承下来的一个子类,即它本身也是一个VCL类,
只要是vcl类,继承当然是没有问题的。

2.>>写一个继承函数,动态的把这个窗体重载

无所谓什么继承函数,只要在一个函数中声明一个该窗体的类,再实例化即可

3.>>并对一些函数或者按钮的属性,方法进行覆盖

这些也没有问题,建议楼主参考一下Master delphi 7,及其自带的demo即可

具体在盒子中有下

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧