找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 1493|回复: 20
打印 上一主题 下一主题

FORM自动创建工具

[复制链接]

24

主题

1796

帖子

8046

积分

六级会员(60)

Rank: 6Rank: 6

积分
8046
跳转到指定楼层
1#
发表于 2014-8-15 15:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 kevin890505 于 2014-8-18 21:54 编辑

一般skill大家都把form整合在il里面,但是自己写FORM的时候由于位置,尺寸等原因往往要测试无数次才能达到想要的效果,这个过程不知道大家感觉如何,反正我觉得好像盲人摸象一样,头大的很,今天偶然看到别的论坛有人发的这个工具,NBXX,很直观
而且转换完成后直接生产il文件,里面包含主函数以及form函数和form-action函数,很方便,人性化,对于创建一些复杂form应该有帮助

使用方法也比较简单:
1,先用koda软件手动绘制好你要的FORM,然后保存为KXF文件
2,再用xml2bnf把刚才的KXF转化为il文件
3,自己修改下里面的函数或者参数名,OK,接下来就自由发挥了
帅气的很
附上地址:
KODA:http://koda.darkhost.ru/page.php?id=download
XML2BNF:https://github.com/xml2bnf/xml2bnf

由于第二个网址貌似还不是有点卡,5M的东西下了我10分钟,还是把附件传上来好点,顺便一起传了吧

顺便加个例子瞧瞧,这个是用里面的模板界面转换成的form
  1. (defun my_form ()
  2.                         time = getCurrentTime()
  3.                         time = parseString(time)
  4.                         day = nth(1 time)
  5.                         month = car(time)
  6.                         month = upperCase(month)
  7.                         year = nth(3 time)
  8.                         date = strcat(" Date: " day " " month " " year)
  9.                          CreateForm()
  10.                         myform=axlFormCreate( (gensym) form_file nil 'Form_Action t)
  11.                         axlFormDisplay(myform)
  12.                         axlUIWPrint(myform date)
  13.                 )
  14. (defun CreateForm ()
  15. drain()
  16. form_file = "TAB_form.form"
  17. myform = outfile(form_file "w")
  18. fprintf(myform "#Created by xml2bnf  perl utility\n")
  19. fprintf(myform "#Coded by Venkata Ramanan/Santa Clara, CA\n\n")
  20. fprintf(myform "FILE_TYPE=FORM_DEFN VERSION=2\n")
  21. fprintf(myform "FORM AUTOGREYTEXT\n")
  22. fprintf(myform "FIXED\n")
  23. fprintf(myform "PORT 62 33\n")
  24. fprintf(myform "HEADER \"Form Field Type Demo\"\n\n")
  25. fprintf(myform "POPUP <ENUM>\"ITEM1\"\"0\",\"ITEM2\"\"1\",\"ITEM3\"\"2\",\"LAST ONE\"\"3\".\n\n")
  26. fprintf(myform "TILE\n\n")
  27. fprintf(myform "## TAB Definition Start## \n")
  28. fprintf(myform "TABSET \"tab\"\n")
  29. fprintf(myform "OPTIONS tabsetDispatch\n")
  30. fprintf(myform "FLOC 1 1\n")
  31. fprintf(myform "FSIZE 57 24\n\n")
  32. fprintf(myform "TAB \"TabSheet1\"\n\n")
  33. fprintf(myform "## Text Field in TAB## \n")
  34. fprintf(myform "TEXT \"Label1\"\n")
  35. fprintf(myform "FLOC 7 3\n")
  36. fprintf(myform "TGROUP \"TabSheet1\"\n")
  37. fprintf(myform "ENDTEXT\n\n")
  38. fprintf(myform "## Text Field in TAB## \n")
  39. fprintf(myform "TEXT \"Label1\"\n")
  40. fprintf(myform "FLOC 7 10\n")
  41. fprintf(myform "TGROUP \"TabSheet1\"\n")
  42. fprintf(myform "ENDTEXT\n\n")
  43. fprintf(myform "ENDTAB\n\n")
  44. fprintf(myform "TAB \"TabSheet2\"\n\n")
  45. fprintf(myform "## List Field in TAB## \n")
  46. fprintf(myform "FIELD List1\n")
  47. fprintf(myform "FLOC 7 6\n")
  48. fprintf(myform "LIST \" \" 14 6\n")
  49. fprintf(myform "FGROUP \"TabSheet2\"\n")
  50. fprintf(myform "ENDFIELD \n\n")
  51. fprintf(myform "## List Field in TAB## \n")
  52. fprintf(myform "FIELD List2\n")
  53. fprintf(myform "FLOC 30 6\n")
  54. fprintf(myform "LIST \" \" 15 6\n")
  55. fprintf(myform "FGROUP \"TabSheet2\"\n")
  56. fprintf(myform "ENDFIELD \n\n")
  57. fprintf(myform "## Text Field in TAB## \n")
  58. fprintf(myform "TEXT \"Label3\"\n")
  59. fprintf(myform "FLOC 7 4\n")
  60. fprintf(myform "TGROUP \"TabSheet2\"\n")
  61. fprintf(myform "ENDTEXT\n\n")
  62. fprintf(myform "## Text Field in TAB## \n")
  63. fprintf(myform "TEXT \"Label4\"\n")
  64. fprintf(myform "FLOC 31 4\n")
  65. fprintf(myform "TGROUP \"TabSheet2\"\n")
  66. fprintf(myform "ENDTEXT\n\n")
  67. fprintf(myform "ENDTAB\n\n")
  68. fprintf(myform "TAB \"TabSheet3\"\n\n")
  69. fprintf(myform "ENDTAB\n\n")
  70. fprintf(myform "ENDTABSET\n\n")
  71. fprintf(myform "ENDTILE\n\n")
  72. fprintf(myform "ENDFORM\n\n")

  73. close(myform)
  74. )


  75. (defun Form_Action (myform)
  76. (let (t1 item index field cnt)(printf "field/value %L = %L (int %L\n)"
  77. myform->curField myform->curValue, myform->curValueInt )
  78. (printf "doneState %L\n" myform->doneState )
  79. case(myform->curField
  80.                 ("List1"

  81.                 ;List Field
  82.                 ;Enter Action Here
  83.                
  84.                 )
  85.                 ("List2"

  86.                 ;List Field
  87.                 ;Enter Action Here
  88.                
  89.                 )
  90.         )
  91.                 )

  92. if((nequal myform->doneState 0)
  93. axlFormClose(myform))
  94. )
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1贡献 +6 收起 理由
deargds + 6 支持!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏6 支持!支持! 反对!反对!

73

主题

688

帖子

2499

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2499
推荐
发表于 2017-8-2 14:17 | 只看该作者
本帖最后由 王开鑫55 于 2017-8-2 14:23 编辑

可以,不错,不能放在中文目录下,我放在桌面上的,不能转换

1

主题

209

帖子

173

积分

二级会员(20)

Rank: 2Rank: 2

积分
173
推荐
发表于 2015-8-21 14:28 | 只看该作者
支持支持支持  非常感謝

93

主题

645

帖子

3395

积分

五级会员(50)

Rank: 5

积分
3395
推荐
发表于 2014-8-18 11:00 | 只看该作者
这写软件是免费的吗?公司可不可以用

点评

随便整 单机版小工具  发表于 2014-8-18 19:03

93

主题

645

帖子

3395

积分

五级会员(50)

Rank: 5

积分
3395
3#
发表于 2014-8-18 11:02 | 只看该作者
软件需不需要license

点评

不需要 随便整 单机版小工具  发表于 2014-8-18 19:04

7

主题

17

帖子

141

积分

二级会员(20)

Rank: 2Rank: 2

积分
141
4#
发表于 2014-8-19 10:06 | 只看该作者
学习了

44

主题

121

帖子

228

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
228
5#
发表于 2014-8-28 19:30 | 只看该作者
好像不能实现用bmp

26

主题

152

帖子

433

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
433
7#
发表于 2016-6-4 08:00 来自手机 | 只看该作者
下载试试感谢楼主分享!

64

主题

613

帖子

2459

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
2459
8#
发表于 2016-6-14 11:16 | 只看该作者
谢谢分享

5

主题

184

帖子

559

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
559
9#
发表于 2017-1-26 07:36 | 只看该作者
謝謝分享

0

主题

198

帖子

384

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
384
10#
发表于 2017-1-26 18:47 | 只看该作者
感谢楼主分享~

0

主题

198

帖子

384

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
384
11#
发表于 2017-1-27 08:24 | 只看该作者
感谢楼主分享~

10

主题

379

帖子

4169

积分

五级会员(50)

Rank: 5

积分
4169
12#
发表于 2017-1-27 09:51 | 只看该作者
感谢楼主分享~

0

主题

198

帖子

384

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
384
13#
发表于 2017-1-28 19:34 | 只看该作者
感谢楼主分享

28

主题

182

帖子

619

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
619
15#
发表于 2017-10-13 12:14 | 只看该作者
楼主真是好人啊,感谢分享。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-9-19 08:58 , Processed in 0.071672 second(s), 41 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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