起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 188|回复: 3

【搞定】在主窗体中调用子窗体及子窗体的函数的方法?[请求]**

[复制链接]
发表于 2007-5-15 15:42:38 | 显示全部楼层 |阅读模式
我用这以下方法会错误提示:"TForm"  and "RuntimeTypeHandle"


if TEST_DATASET.TTEST_SELECTFORM.ShowModal = mrOK then
    TEST_DATASET.TTEST_SELECTFORM.ResultValue();


说明:
TEST_DATASET            — 资源集ID
TEST_SELECTFORM   — 窗体ID

功能已引用TEST_DATASET资源集
子窗体的ResultValue()函数定义为public。
static function TTEST_SELECTFORM.ResultValue(): String;
begin
  Result:= AKeyFieldValue;
end;
回复

使用道具 举报

 楼主| 发表于 2007-5-15 16:23:48 | 显示全部楼层
特性是想在主窗体接收子窗体返回操作(根据“确定”或“取消”按钮来决定返回操作处理),实在想不出来,所以才请教啊!
回复 支持 反对

使用道具 举报

发表于 2007-5-15 18:35:25 | 显示全部楼层
ShowModal 不是一个静态方法,所以调用ShowModal一定要先创建类的实例才可以
例如:
var
  f: TEST_DATASET.TTEST_SELECTFORM;
begin
  f := TEST_DATASET.TTEST_SELECTFORM.Create(Context);
  if f.ShowModal = mrOK then
    TEST_DATASET.TTEST_SELECTFORM.ResultValue();

其实最好ResultValue也不要定义成静态方法,直接用f.ResultValue调用
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-16 08:30:29 | 显示全部楼层
清楚了,谢谢!!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-8 14:07 , Processed in 0.039154 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表