Delphi中一个窗体跟另一个窗体怎样的方式通信才最好呢?请大家谈谈!螃蟹敬上

PXXYJ 2003-12-12 03:38:03
Delphi中一个窗体跟另一个窗体怎样的方式通信才最好呢?是直接调用窗体的组件还是调用过程访问组件呢?还有就是变量或过程在哪个区定义比较好啊(PUBLISH\PRIVATE)但我看到好些代码这两个地方都不放的就放在TYPE的下面好困惑哦,这是面向对象编程吗?
...全文
82 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
wolf2005 2003-12-15
  • 打赏
  • 举报
回复
变是肯定的,如果是public或published的变了,那你用的部分是要变的,不然怎么用啊,
PXXYJ 2003-12-15
  • 打赏
  • 举报
回复
to kylix2003:
单元文件怎么管理啊,比如我有两个PAS:A.Pas,B.Pas;在B中USES A。PAS然后在B中调用A中的组件或方法,就这样的意思吗,但如果A中的组件或方法变拉那在B中不是也要修改吗,如果项目大拉那。。。。小弟不懂请指教?
ekin 2003-12-14
  • 打赏
  • 举报
回复
没有一种方法能在每种情况下都作到最佳
kylix2003 2003-12-14
  • 打赏
  • 举报
回复
同意楼上的,我觉得有时候使用单元文件更好一些,容易管理,体现模块思想!
WGYKING 2003-12-14
  • 打赏
  • 举报
回复
一个单元文件主要分为接口部分和实现部分(还有两部分较少出现,初始和释放),publish本来就是放在接口部分定义的,它和PRIVATE、PUBLIC等四个关键字一起修饰单元的成员变量和成员方法,publish和PUBLIC差不多,对外公布,对控件而言,用publish关键字申明的成员变量和成员方法会显示在属性和事件中。。。
楼下继续补充。。。
lzx130 2003-12-14
  • 打赏
  • 举报
回复
可也声明公共变量,用uses,等
看情况了~!~!
PXXYJ 2003-12-14
  • 打赏
  • 举报
回复
我也想最好不要直接调用其他窗体的组件,这样维护起来会很麻烦的,还有请教教一下放在publish与放在接口部分定义的函数或过程有什么不同啊,DELPHI的编程框架请大家一起讨论一下,编程思想理解透拉就很爽拉!!!
Allanlove 2003-12-12
  • 打赏
  • 举报
回复
我觉得,最好通过其他的类的方式来使窗体互相通信
如果单一的一个窗体调用另一个窗体,那么uses就好了
如果互相调用,最好建一个新类

firstshine 2003-12-12
  • 打赏
  • 举报
回复
具体问题具体分析,没有一概而论的哪个好哪个不好。要不然只保留一种方式就行了,为什么要有那么多种数据传递方式?
xshmeng 2003-12-12
  • 打赏
  • 举报
回复
本人最近用C#,上面的语法可能会有问题。不过意思表达清楚了。请谅解。
xshmeng 2003-12-12
  • 打赏
  • 举报
回复
怎么可以怎么方便怎么用呢,软件是要分模块的。软件工程里面讲模块之间的耦合度了,应该关联性越弱越好。这样维护起来就很容易,扩展性也好。就像一台电视机,你什么都能进去拆进去改,那谁还敢给你维修啊!
最好的方式是在被调用的窗体里面写一个Public函数:
public ShowDetailForm(out s: string):Integer;
f: fmDetail;
begin
f := fmDetail.create(nil);
result := f.showdialog;
if result = ID_Ok then
begin
s := f.Label1.Caption;
end;
end;
然后在调用的窗体里面调用这个函数就行了。s就是你要返回的东西。用什么要通过参数传,千万不能用什么建什么,要什么拿什么。这样程序就乱了。切记
constantine 2003-12-12
  • 打赏
  • 举报
回复
ding
hch_45 2003-12-12
  • 打赏
  • 举报
回复
直接uses 就可以用了。
Cipherliu 2003-12-12
  • 打赏
  • 举报
回复
1.直接调用组件和通过过程调用组件我看都差不多.怎么方便怎么用吧.
2.published\public\private\protected
如果不写的话,默认是published
WGYKING 2003-12-12
  • 打赏
  • 举报
回复
其实单元文件就相当于一个类
按你的要求
如果希望OO
就在待调用的单元里声明一个属性,语法和类中一样
设置属性的Get和Set方法
zhangnan623 2003-12-12
  • 打赏
  • 举报
回复
是直接调用窗体的组件还是调用过程访问组件呢? 怎么方便怎么用
还有就是变量或过程在哪个区定义比较好啊(PUBLISH\PRIVATE)? PUBLISH下的变量和函数可以被其他类访问 PRIVATE下别的类不能访问
两个地方都不放的就放在TYPE的下面好困惑哦? 有的记录类型定义和类定义放在TYPE下

5,388

社区成员

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

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