| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5967 人关注过本帖, 6 人收藏
标题:关于把表单输出到PRG的实现探讨
取消只看楼主 加入收藏
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:989
专家分:4966
注 册:2013-2-16
结帖率:100%
收藏(4)
 问题点数:0 回复次数:3 
关于把表单输出到PRG的实现探讨
说明
【缘起】

多数人(包括我自己)在写程序界面的时候,喜欢用表单设计器,毕竟它所见即所得,需要什么控件,直接拖上去就OK,简单快捷,让我们有更多的时间,专注业务本身的逻辑。毕竟,所见即所得,这是目前主流的界面设计方式。

但是,有时,我们会遇到这种需求:把一个已经写好的Form,用PRG的形式,重新实现一遍,比如有时为了申请专利,需要源代码,如果把表单用PRG形式提交的话,就是“原汁原味”的源代码,简单方便;或者,有时为了加密的需要,不利用Form,直接用PRG表达的FORM,更有利于代码加密。

Form_To_Prg,就是在这个背景下开发的。

以下举例说明。
比如我们有这样一个表单:(图1)
图片附件: 游客没有浏览图片的权限,请 登录注册

表单的各部分已经写好,测试OK。
现在我们需要把这个表单,转换为PRG,于是,运行本程序,出现如下界面:
图片附件: 游客没有浏览图片的权限,请 登录注册


步骤:1、填写要分析的SCX文件全路径到上方编辑框中(截图略);

然后,2、点击【解析表单】;
点击后,程序开始分析这个SCX文件,并将分析结果显示于编辑框中。如图:
 
图片附件: 游客没有浏览图片的权限,请 登录注册

步骤3、点击【另存到PRG】(截图略)
这样,就把一个表单文件,转换为PRG了,我们打开这个新生成的PRG,如图:
图片附件: 游客没有浏览图片的权限,请 登录注册


可以看到,PRG已经生成,尝试运行一下试试?
图片附件: 游客没有浏览图片的权限,请 登录注册

 
可以看到,界面还原,与图1 一模一样,“克隆”成功。
这样,我们就实现了Form 到PRG的转换.

现在,把这个小程序放上来,欢迎大家都来用用,多多测试(因为刚刚写好,未严格测试,只测试了几个SCX文件)。
 
代码开放,水平有限,写得很菜,权当是抛砖引玉,如果哪一段你看了不爽,你随意修改,我的本意,就是希望这个成为一个公用的工具,所以欢迎各位贡献你的巧思和智慧。
main解析表单.zip (137.51 KB)


[此贴子已经被作者于2021-8-9 15:36编辑过]

搜索更多相关主题的帖子: 界面 PRG 表单 测试 文件 
2021-08-09 15:27
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:989
专家分:4966
注 册:2013-2-16
收藏
得分:0 
更新了,
加入分析自定义类和OLE控件的动作
加入一个按钮,打开寻找文件对话框.
感谢测试和提出改进意见.
main解析表单.zip (2.82 KB)
2021-08-10 12:06
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:989
专家分:4966
注 册:2013-2-16
收藏
得分:0 
回复 10楼 吹水佬
谢谢关注,会改进这一点,有的表单载入时要求参数,直接Do 不带参数的话, 确实会遇到一些问题,应该把Error处理考虑进来.

目前还要解决一个问题,就是所有容器类控件,在它之中的下级控件的识别问题,
目前的程序,会把所有容器中的控件,识别为Form的控件,正在解决中.
2021-08-10 16:12
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:989
专家分:4966
注 册:2013-2-16
收藏(2)
得分:0 
最新更新:
为了进一步测试代码,特意做了一个多层控件嵌套的Scx表单:如图
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册

可以看到,这个表单故意做得有点“绕”,目的就是让程序在较复杂的环境中测试。

以前的第2版程序,无法解析这种比较复杂的结构,尤其容器类控件的嵌套问题解决得不好。

经过几天的研究,现在这个问题终于比较好的解决了。
经测试,新版的程序可以顺利解析出这个多层次嵌套的SCX表单到PRG文件中。
第3版 程序附后,欢迎测试,欢迎各位贡献你们的智慧。
第3版.zip (316.7 KB)



[此贴子已经被作者于2021-8-20 08:46编辑过]

2021-08-19 10:50
快速回复:关于把表单输出到PRG的实现探讨
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013314 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved