看看STM8的Option界面

chenjian3   2009-5-15 12:20 楼主
完全脚本解析的,可谓一劳永逸


GROUPBOX    98, 14, 96, 90, "看门狗相关"
CHECKBOX   104, 33, 60, 11, LSI_EN, "允许使用LSI"
CHECKBOX   104, 49, 67, 13, IWDG_HW, "IWDG硬件激活"
CHECKBOX   104, 64, 67, 13, WWDG_HW, "WWDG硬件激活"
CHECKBOX   104, 80, 85, 13, WWDG_HALT, "HALT时WWDG触发复位"

LTEXT      102, 108, 65, 10, "HSE晶体时间"
COMBOBOX   100, 118, 80, 52, HSECNT

CHECKBOX   102, 141, 84, 13, WaitStatee, "EEPROM wait state"
CHECKBOX     7, 141, 76, 14, OPTBL, "Bootloader Mark"

BUTTON     260, 165, 50, 14, OK, "确认"
BUTTON     200, 165, 50, 14, CANCEL, "取消"
HEXEDIT    7, 165, 180, 14, BUFFER

回复评论 (6)

呵呵,用VC的。

                                 怎么排坐标呢?
点赞  2009-5-15 12:39

排坐标是小问题

Windows的API排个坐标还不是小Case

把这些控件跟实际的数据对应起来,才是个麻烦事。
点赞  2009-5-15 14:32

呵呵,VC要排的美观不容易。

还是BCB的RAD比较省事。
另外还要处理dpi/字体/windows主题等等影响界面的因素。

试过把dpi改成120没?呵呵
点赞  2009-5-15 15:06

那是你没有研究透Windows的Dialog基本单位

用RAD比较多了,一般不喜欢玩这些了。
其实VB比BCB简单多了,可惜了Basic的语法把VB葬送了。

跟DPI没关系,DPI的变化,会导致系统默认字体改变,再导致Dialog基本单位改变。
绘制Dialog时,要用Resource中的数值乘Dialog基本单位,于是整体外观就保住了。
改变字体或者字体的大小,都会导致Dialog基本单位改变。

所以不得不佩服MS的设计能力,设计好的Dialgo不会因为DPI或者字体的改变而惨不忍睹。
我定义的脚本的UI部分,语法就抄袭Resouce文件来的,但做了简化。

[Dialog]
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
FONT 9,"宋体"
POSITION  0, 0, 338, 188
CAPTION "MCU Option - STM8S205"
点赞  2009-5-15 15:44

专用的东西相对而言功能也是比较固定的

                                 所以界面就不用太费心思了,逐个放一遍也不费事……
点赞  2009-5-15 16:53

参数用全局结构体保存

创建对话框;
传入参数指针;
启动对话框;
对话框初始化代码里根据全局参数,设置各个checkbox,edit什么的……
操作……
点击确认的时候扫描一遍对话框,把参数刷新到全局参数里

很轻松……
点赞  2009-5-15 16:56
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复