明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4997|回复: 10

DCL动态对话框求助

[复制链接]
发表于 2013-9-13 10:44:51 | 显示全部楼层 |阅读模式
4明经币
    求高手帮忙:要求,在主对话框里面点选单选按钮“新建工程”用户在下面输入工程名称,然后在指定盘符里生成一个文件夹,文件夹名称为用户输入的工程名称,用户点选“添加“按钮后弹出一个动态对话框,点击动态对话框上的确定按钮后在刚刚生成文件夹下面生成一个.txt文本文件并记录动态对话框里的内容,同时在下面的列表框里生成一个编号。选择列表框里的编号弹出对应的动态对话框(即生成编号前是怎么样就是怎么样的弹出来,也还可以继续添加删除行数,修改里面的内容),再点击确定按钮后修改对应的.TXT文本文件里面的内容。点”删除“按钮就删除编号及对应的.txt文本文件!
    现在”添加” “删除”按钮的功能基本实现,就是“修改”按钮的不知道怎么弄了!两个单选按钮的功能应该也不难实现,现在就卡在了这个“修改”按钮这里了,求各位老师帮忙弄一下,或者有类似的lisp语言的例子给参考一下也行!
  只要能帮忙实现“修改”按钮的功能都给币了!
  1. ;;修改按钮还有问题
  2. (defun c:mjbianhao()
  3.   (setq t1 (getvar "CDATE"));;计时开始------
  4.   (setq mjbh-3(list "4" "6" "8"))
  5.   (setq mjbh-5(list "T" "Z" "U"))
  6.   (setq os(getvar "osmode"))
  7.   (setvar "osmode" 0)
  8.   (setq mjbh0(load_dialog "F:\\“终极软件”\\试验编辑中程序\\mjtysj.dcl"))
  9.   (if(< mjbh0 0)(exit))
  10.   (setq mjstd 1)
  11.   (setq mjbh6 '())
  12.   (setq mjbh9 '()  mjbh12 '())
  13.   (while(< mjstd 10)
  14.     (if(not(new_dialog "mjtysj" mjbh0))(exit))
  15.     (if(/= mjbh6 nil)
  16.       (progn
  17.   (start_list "mjlbk");;打开关键字为mjlbk的列表
  18.   (mapcar'add_list mjbh6);;依次向列表添加表项
  19.   (end_list);;结束当前列表控件的处理
  20.   );;progn
  21.     );;if
  22. ;;;    (set_tile "mhyyxwzxd" mjbh6)
  23.     (action_tile "mjxj" "(MODE_TILE "mjdq1" 1)(MODE_TILE "mjdq2" 1)(MODE_TILE "mjxj1" 0)(MODE_TILE "mjxj2" 0)");;设置点击单选按钮后下面两行控件变灰
  24.     (action_tile "mjdq" "(MODE_TILE "mjxj1" 1)(MODE_TILE "mjxj2" 1)(MODE_TILE "mjdq1" 0)(MODE_TILE "mjdq2" 0)");;设置点击单选按钮后下面两行控件变灰
  25.     (action_tile "mjtysj5" "(mjtjzcx)(done_dialog 2)");;点“添加”按钮后从新加载对话框并更新控件mhyyxwzxd
  26.     (action_tile "mjtysj6" "(mjxgzcx)(done_dialog 3)");;修改按钮的动作
  27.     (action_tile "mjtysj7" "(mjsczcx)(done_dialog 4)");;删除按钮的动作
  28.     (action_tile "accept" "(取得数据的子程序)(done_dialog 10)");;确定按钮的动作
  29.     (action_tile "cancel" "(done_dialog 11)");;取消按钮的动作
  30.     (setq mjstd(start_dialog))
  31.   );while
  32.   (unload_dialog mjbh0)
  33.   (setq t2 (getvar "CDATE"));;计时结束------
  34. (princ "\n程序共用时=")
  35. (princ (* (- t2 t1) 1e6))
  36. (princ "秒")
  37. )

  38. (defun mjxgzcx();;取得对应编号对应的文本文件里面的内容(点击修改按钮会调用此程序)
  39.   (setq mjxgzcx8 '() mjxgzcx7 '())
  40.   (if (= (setq mjxgzcx1(reverse(vl-directory-files "F:\\编号内容" "*"))) nil) (vl-mkdir "F:\\编号内容"));;判断指定的文件夹是否存在,如果不存在则新建之
  41.   (setq mjxgzcx1(reverse(vl-directory-files "F:\\编号内容" "*.txt")));;取到指定路径下的所有txt文件(文本文件)并把返回的文件列表倒序
  42.   (setq mjxgzcx2(length mjxgzcx1));;取到读取到的文本文件个数
  43.   (setq mjxgzcx3(get_tile "mjlbk"));;取得下拉列表的返回值
  44.   (setq mjxgzcx4(strcat "F:\\编号内容\" (nth (atoi mjxgzcx3) mjxgzcx1)));;取到指定路径下指定的第几个文本文件(这里的1要改成mjxgzcx3)
  45.   (setq mjxgzcx5(open mjxgzcx4 "r"));;打开指定的文件
  46.   (setq mjxgzcx6(read(read-line mjxgzcx5)));;读取指定文件
  47.   (setq mjxgzcx7(cons mjxgzcx6 mjxgzcx7))
  48.   (while mjxgzcx6  ;;循环将取得的内容组合成一个列表
  49.     (setq mjxgzcx6(read-line mjxgzcx5));;读取指定文件
  50.     (if (/= mjxgzcx6 nil);;判断如果读取文本文件里的内容不为空就添加到列表里
  51.       (setq mjxgzcx7(cons mjxgzcx6 mjxgzcx7));;将从文本文件里面取得的数据组合成一个列表
  52.     );;if
  53.   );;while
  54.   (close mjxgzcx5)
  55.   (setq mjxgzcx8(reverse mjxgzcx7));;将列表倒序
  56.   (tt1)
  57.   (princ)
  58. )

  59. (defun mjtjxgzcx();;写入文本子程序(添加和修改按钮都要调用到的子程序)
  60. ;;;  (setq mjtime(menucmd "M=$(edtime,$(getvar,date),YYYYMDhhmmssmsec)"));;取得系统时间到毫秒
  61.   (setq mjtjxgzcx1(strcat "F:\\编号内容\" mjtime ".txt"))
  62. ;;;  (setq mjlst(length keys2) mjl 0)
  63.   (if(= mjaa 1)
  64.     (progn
  65.       (if(/= mjstd 3);;判断要修改的是哪个对话框就打开哪个文本文件!
  66.       (setq mjtjxgzcx2(open mjtjxgzcx1 "w"))
  67. ;;;  (setq mjtjxgzcx2(open mjxgzcx4-dcl "w"))
  68.   )
  69.       (write-line (vl-prin1-to-string (read (itoa DCL行数2))) mjtjxgzcx2);;把动态对话框的行数写到文本文件里
  70.       (write-line (vl-prin1-to-string (read txt2)) mjtjxgzcx2);;写入各个动态编辑框及下拉按钮控件的值
  71. ;;;      (repeat mjlst;;把各个控件的key值写入文本文件(取到注释后就可以用了)
  72. ;;;  (setq mjlst1 (nth mjl keys2))
  73. ;;;  (write-line (vl-prin1-to-string (read mjlst1)) mjtjxgzcx2)
  74. ;;;  (setq mjl (+ mjl 1))
  75. ;;;      );;repeat
  76.       ;;下面这部分写入的是各面墙的最后一个距离
  77.       (write-line (vl-prin1-to-string (read textx1)) mjtjxgzcx2)
  78.       (write-line (vl-prin1-to-string (read texty1)) mjtjxgzcx2)
  79.       (write-line (vl-prin1-to-string (read texts1)) mjtjxgzcx2)
  80.       (write-line (vl-prin1-to-string (read textz1)) mjtjxgzcx2)
  81.       (write-line (vl-prin1-to-string (read textx2)) mjtjxgzcx2)
  82.       (write-line (vl-prin1-to-string (read texty2)) mjtjxgzcx2)
  83.       (write-line (vl-prin1-to-string (read texts2)) mjtjxgzcx2)
  84.       (write-line (vl-prin1-to-string (read textz2)) mjtjxgzcx2)
  85.       (write-line (vl-prin1-to-string (read mjsjcd)) mjtjxgzcx2)
  86.       (close mjtjxgzcx2)
  87.       );;progn
  88.     );;if
  89. )

  90. (defun mjtjzcx();;编号控件组合(点击添加按钮执行此程序)
  91.   (setq mjtime(menucmd "M=$(edtime,$(getvar,date),YYYYMDhhmmssmsec)"));;取得系统时间到毫秒
  92.   (setq mjbh2(get_tile "mjtysj1"));;取得曲直按钮的值
  93.   (setq mjbh3(atoi(get_tile "mjtysj2")))
  94.   (setq mjbh4(get_tile "mjtysj3"))
  95.   (setq mjbh5(atoi(get_tile "mjtysj4")))
  96.   (setq mjbh6_1(list(strcat "全直" (nth mjbh3 mjbh-3) "全直角" (nth mjbh5 mjbh-5))));;这里的“全直”和“全直角”以后还要用mjbh2和mjbh4替换掉!因为现在只有一个对象所以不用判断就可以直接用
  97.   (if (/= mjbh6 nil)(setq mjbh6(append mjbh6_1 mjbh6))(setq mjbh6 mjbh6_1))
  98.   (tt1)
  99. )


  100. (defun mjsczcx();;点击“删除”按钮执行的子程序
  101.   (setq mjbh9 nil mjbh12 nil)
  102.   (setq mjbh7(atoi(get_tile "mjlbk")));;将取得的值转换为实数
  103.   (setq mjbh8(length mjbh6));;取得列表个数
  104.   (if (= mjbh7 0)
  105.     (setq mjbh6(cdr mjbh6));;如果选择的是列表里第一个则执行这句
  106.     (progn
  107.   (setq xgi1 0)
  108.   (repeat mjbh7
  109.     (setq mjbh10(nth xgi1 mjbh6));;提取列表的元素
  110.     (setq mjbh9(cons mjbh10 mjbh9));;将取得的元素结合成一个列表
  111.     (setq xgi1(+ xgi1 1))
  112.   );;while
  113.    (setq xgi2 (+ mjbh7 1))
  114.   (setq mjbh13(- mjbh8 mjbh7 1));;循环次数
  115.   (repeat mjbh13  ;;循环
  116.     (setq mjbh14(nth xgi2 mjbh6));;提取列表的元素
  117.     (setq mjbh12(cons mjbh14 mjbh12));;将取得的元素结合成一个列表
  118.     (setq xgi2(+ xgi2 1))
  119.   )
  120.   (setq mjbh6(append (reverse mjbh9) (reverse mjbh12)));;将两个列表倒序并结合成一个列表
  121.   (if(/= mjbh6 nil)
  122.       (progn
  123.   (start_list "mjlbk");;打开关键字为mjlbk的列表
  124.   (mapcar'add_list mjbh6);;依次向列表添加表项
  125.   (end_list);;结束当前列表控件的处理
  126.   );;progn
  127.     )
  128.     );;progn
  129.   )
  130. )

  131. (defun tt1()
  132. ;  (if (/= (getstring "\n是否访问猫老师提供的免费Lisp在线视频教程?[Y]/[N]") "n")
  133. ;    (command "BROWSER" "http://www.youku.com/playlist_show/id_5180662.html")
  134. ;  )
  135.   (if (not DCL行数2)(setq DCL行数2 1))
  136.   (cond ((= mjstd 2) (setq DCL行数2 1))
  137.   ((= mjstd 3) (setq DCL行数2(car mjxgzcx8)))
  138.   );;cond
  139.   (cond ((= mjstd 2) (setq txt2 nil))
  140.   ((= mjstd 3) (setq txt2(cadr mjxgzcx8)))
  141.   );;cond
  142.   (setq DCL运算符2 '("1下门" "1下窗" "1右门" "1右窗" "1上门" "1上窗" "1左门" "1左窗" "2下门" "2下窗" "2右门" "2右窗" "2上门" "2上窗" "2左门" "2左窗"))
  143.   (autolispcoder_load2)
  144.   (setq aa DCL行数2)
  145.   (princ "\n不死猫荣誉出品!QQ43797405")
  146.   (princ)
  147. )
  148. (defun autolispcoder_load2( / dcl_id2 Dialog_Return2 key Dcl_File2)
  149.   (vl-load-com)
  150. ;;;  (if(/= mjstd 3);;判断要修改的是哪个对话框就打开哪个对话框!
  151.   (setq dcl_id2 (load_dialog (setq Dcl_File2 (Write_Dcl_autolispcoder2))));对话框加载
  152. ;;;    (setq dcl_id2 (load_dialog mjxgzcx4-dcl))
  153. ;;;  );;if
  154. ;;;  (vl-file-delete Dcl_File2);加载后删除DCL文件
  155.   (setq Dialog_Return2 2)
  156.   (while (> Dialog_Return2 1) ;循环控制对话框是否结束
  157.     (new_dialog "autolispcoder2" dcl_id2);建立窗体
  158. ;-->-->-对话框初始化->-->--
  159.     (setq keys2 '("Command10" "Command20" "Text0" "accept"));列表全部控件名称
  160.     (setq i 1)
  161.     (repeat DCL行数2
  162.       (setq keys2 (append keys2 (list (strcat "Text0" (itoa (1- (* i 2)))) (strcat "Combo0" (itoa i)) (strcat "Text0" (itoa (* i 2))))))
  163.       (start_list (strcat "Combo0" (itoa i)));下拉列表 {"Combo1"} 初始化
  164.       (mapcar 'add_list DCL运算符2);添加列表项
  165.       (end_list)
  166.       (setq i (1+ i))
  167.     )
  168.     (foreach key keys2;全部控件的初始化
  169.       (if (eval (read (strcat key "_bak"))) (set_tile key (eval (read (strcat key "_bak")))));控件内容
  170.       (action_tile key "(Action_autolispcoder_Keys2 $key $value)");点击动作
  171.     )
  172.     (if(/= textx1 nil) (set_tile "Textx1" textx1));;判断各个墙的数据是否为空,如果不为空这赋予其值为上次输入的值
  173.     (if(/= texty1 nil) (set_tile "Texty1" texty1))
  174.     (if(/= texts1 nil) (set_tile "Texts1" texts1))
  175.     (if(/= textz1 nil) (set_tile "Textz1" textz1))
  176.     (if(/= textx2 nil) (set_tile "Textx2" textx2))
  177.     (if(/= texty2 nil) (set_tile "Texty2" texty2))
  178.     (if(/= texts2 nil) (set_tile "Texts2" texts2))
  179.     (if(/= textz2 nil) (set_tile "Textz2" textz2))
  180.     (if(/= mjsjcd nil) (set_tile "mjsjcd" mjsjcd) (set_tile "mjsjcd" "chang"));;判断单选按钮组是否为空,如果是这设置默认为长
  181. ;--<--<-对话框初始化完成-<--<--
  182.     (setq Dialog_Return2 (start_dialog));开启对话框(用户可见)
  183.   )
  184.   (unload_dialog dcl_id2);退出时卸载对话框
  185.   (if (= Dialog_Return2 -99)
  186.     (autolispcoder_load2)
  187.   )
  188.     (setq mjaa Dialog_Return2)
  189.   (if (= mjaa 1) (mjtjxgzcx));;
  190.   (princ);防止函数回显
  191. )
  192. (defun Action_autolispcoder_Keys2 (key value) ;全部控件的点击动作触发
  193.   (cond
  194. ;;;    ((= key "accept") ;{确认按钮}
  195. ;;;      
  196. ;;;      (Get_autolispcoder_Data2)
  197. ;;;      (done_dialog 1);对话框退出返回主函数 传递给Dialog_Return值为1
  198. ;;;    )
  199. ;;;    ((= key "cancel") ;{取消按钮}
  200. ;;;      
  201. ;;;      (done_dialog 0);对话框退出返回主函数 传递给Dialog_Return值为0
  202. ;;;    )
  203.     ((= key "Command10") ; {"增加一行"} (按钮)
  204.      (mj_quzhi)
  205.       (setq DCL行数2 (1+ DCL行数2))
  206.       (Get_autolispcoder_Data2)
  207.      (vl-file-delete Dcl_File2);加载后删除DCL文件
  208.       (done_dialog -99)
  209.     )
  210.     ((= key "Command20") ; {"删除一行"} (按钮)
  211.      (mj_quzhi)
  212.       (Get_autolispcoder_Data2)
  213.      (vl-file-delete Dcl_File2);加载后删除DCL文件
  214.       (if (> DCL行数2 0)
  215.         (setq DCL行数2 (1- DCL行数2))
  216.       )
  217.       (done_dialog -99)
  218.     )
  219.     ((= key "accept") ; 确定按钮
  220.       (setq txt2 "(")
  221.       (setq i 1)
  222.       (repeat DCL行数2
  223.         (setq txt2 (strcat
  224.         txt2
  225.         "(" (nth (read (get_tile (strcat "Combo0" (itoa i)))) DCL运算符2)
  226.         " " (get_tile (strcat "Text0" (itoa (1- (* i 2)))))
  227.         " " (get_tile (strcat "Text0" (itoa (* i 2))))
  228.         ")"
  229.         ))
  230.         (setq i (1+ i))
  231.       )
  232.      (mj_quzhi);;取得两矩形中上下左右墙的最后一个数据(子程序)
  233.       (setq txt2 (strcat txt2 ")"))
  234.       (set_tile "Text0" txt2)
  235.      (Get_autolispcoder_Data2)
  236. ;;;     (qumenshujv);;拆分、判断、组合所取得的门、窗、墙数据(子程序)
  237.       (done_dialog 1);对话框退出返回主函数 传递给Dialog_Return值为1
  238.     )
  239.     ((= key "Combo10") ; {} (下拉列表)
  240.       ()
  241.     )
  242.   )
  243. )
  244. (defun mj_quzhi();;取得两矩形中上下左右墙的最后一个尺寸(如果没有门窗则为整面墙的尺寸)
  245.   (setq textx1(get_tile "Textx1"))
  246.   (setq texty1(get_tile "Texty1"))
  247.   (setq texts1(get_tile "Texts1"))
  248.   (setq textz1(get_tile "Textz1"))
  249.   (setq textx2(get_tile "Textx2"))
  250.   (setq texty2(get_tile "Texty2"))
  251.   (setq texts2(get_tile "Texts2"))
  252.   (setq textz2(get_tile "Textz2"))
  253.   (setq mjsjcd(get_tile "mjsjcd"))
  254. )
  255. (defun Get_autolispcoder_Data2( / key);临时生成Dcl文件 返回文件名
  256.   (foreach key keys2
  257.     (set (read (strcat key "_bak")) (get_tile key));每个控件都赋给一个变量 用于下次开启初始化
  258.   )
  259. )
  260. (defun Mydcl初始化2(DCL行数2 / DCLA2 dclB2 DCLC2)
  261.     (setq DCLA2 (list
  262.     "autolispcoder2:dialog"
  263.     "{"
  264.     " label = "不死猫老师自动编码工具范例-多条件处理";"
  265.     "    :row"
  266.     "    {"
  267.     "        :button"
  268.     "        {"
  269.     "            key = "Command10" ;"
  270.     "            label = "增加一行" ;"
  271.     "            width = 22.95 ;"
  272.     "            height = 4.275 ;"
  273.     "        }"
  274.     "        :button"
  275.     "        {"
  276.     "            key = "Command20" ;"
  277.     "            label = "删除一行" ;"
  278.     "            width = 24.15 ;"
  279.     "            height = 4.275 ;"
  280.     "        }"
  281.     "    }"
  282.     ))
  283.     (setq dclB2 nil)
  284.     (setq i 1)
  285.     (repeat DCL行数2
  286.       (setq dclB2 (append dclB2 (list
  287.         "    :row"
  288.         "    {"
  289.         "        :edit_box"
  290.         "        {"
  291.         (strcat "            key = "Text0" (itoa (- (* i 2) 1)) "" ;")
  292.         "            label = "门或窗距" ;"
  293.         "            width = 13.35 ;"
  294.         "            height = 0.675 ;"
  295.         "        }"
  296.         "        :popup_list"
  297.         "        {"        
  298.         (strcat "            key = "Combo0" (itoa i) "" ;")
  299.         "            width = 5  ;"
  300.         "            height = 1.5 ;"
  301.         "        }"
  302.         "        :edit_box"
  303.         "        {"
  304.         (strcat "            key = "Text0" (itoa (* i 2)) "" ;")
  305.         "            label = "门或窗宽" ;"
  306.         "            width = 14.55 ;"
  307.         "            height = 0.675 ;"
  308.         "        }"
  309.         "    }"
  310.         )
  311.       ))
  312.       (setq i (1+ i))
  313.     )
  314.   (setq DCLC2 (list  ;;输入门或窗距和门或窗宽的对话框!如果某一面墙没有
  315.     "    :row"
  316.     "    {"
  317.     "        :edit_box"
  318.     "        {"
  319.     "            key = "Textx1" ;"
  320.     "            label = "1下墙" ;"
  321.     "            width = 8.75 ;"
  322.     "            height = 0.9375 ;"
  323.     "        }"
  324.     "        :edit_box"
  325.     "        {"
  326.     "            key = "Texty1" ;"
  327.     "            label = "1右墙" ;"
  328.     "            width = 8.75 ;"
  329.     "            height = 0.9375 ;"
  330.     "        }"
  331.     "        :edit_box"
  332.     "        {"
  333.     "            key = "Texts1" ;"
  334.     "            label = "1上墙" ;"
  335.     "            width = 8.75 ;"
  336.     "            height = 0.9375 ;"
  337.     "        }"
  338.     "        :edit_box"
  339.     "        {"
  340.     "            key = "Textz1" ;"
  341.     "            label = "1左墙" ;"
  342.     "            width = 8.75 ;"
  343.     "            height = 0.9375 ;"
  344.     "        }"
  345.     "    }"
  346.     "    :row"
  347.     "    {"
  348.     "        :edit_box"
  349.     "        {"
  350.     "            key = "Textx2" ;"
  351.     "            label = "2下墙" ;"
  352.     "            width = 8.75 ;"
  353.     "            height = 0.9375 ;"
  354.     "        }"
  355.     "        :edit_box"
  356.     "        {"
  357.     "            key = "Texty2" ;"
  358.     "            label = "2右墙" ;"
  359.     "            width = 8.75 ;"
  360.     "            height = 0.9375 ;"
  361.     "        }"
  362.     "        :edit_box"
  363.     "        {"
  364.     "            key = "Texts2" ;"
  365.     "            label = "2上墙" ;"
  366.     "            width = 8.75 ;"
  367.     "            height = 0.9375 ;"
  368.     "        }"
  369.     "        :edit_box"
  370.     "        {"
  371.     "            key = "Textz2" ;"
  372.     "            label = "2左墙" ;"
  373.     "            width = 8.75 ;"
  374.     "            height = 0.9375 ;"
  375.     "        }"
  376.     "    }"
  377.     "    :boxed_radio_row"  ;;单选按钮组
  378.     "    {"
  379.     "  key = "mjsjcd";"
  380.     "      :radio_button"
  381.     "        {"
  382.     "  label="以短的为准&d";key="duan" ;"
  383.     "        }"
  384.     "      :radio_button"
  385.     "        {"
  386.     "  label="以长的为准&c";key="chang";"
  387.     "        }"
  388.     "    }"
  389.     "ok_only ;"
  390.     "}"
  391.     )
  392.   )
  393.   (append DCLA2 dclB2 DCLC2)
  394. )
  395. (defun Write_Dcl_autolispcoder2( / Dcl_File2 file2 str2)
  396.   (setq Dcl_File2 (vl-filename-mktemp nil nil ".Dcl"))
  397.   (setq file2 (open Dcl_File2 "w"))
  398.   (foreach str2 (Mydcl初始化2 DCL行数2)
  399.     (write-line str2 file2)
  400.   )
  401.   (close file2)
  402.   Dcl_File2
  403. )

附件: 您需要 登录 才可以下载或查看,没有账号?注册
 楼主| 发表于 2013-9-13 11:38:47 | 显示全部楼层
  1. mjtysj:dialog{
  2. :column{label="幅面规格";//加框互锁行标签
  3.         :radio_row{
  4.         key="mjxjdq";
  5.         :radio_button{label="新建工程";key="mjxj";}//按钮A0
  6.         :radio_button{label="读取工程";key="mjdq";}//按钮A1
  7.                 }
  8.         :row{
  9.         :boxed_column{
  10.         label="新建(&X)";
  11.         :edit_box{
  12.         key="mjxj1";
  13.         edit_limit=24;
  14.                  }
  15.         :popup_list{
  16.         key="mjxj2";
  17.         }
  18.         }
  19.         :boxed_column{
  20.         label="读取(&D)";
  21.         :edit_box{
  22.         key="mjdq1";
  23.         edit_limit=24;
  24.                  }
  25.         :popup_list{
  26.         key="mjdq2";
  27.         }
  28.         }
  29.         }
  30.         }
  31.                    spacer_1;
  32.         label="编号";
  33.         :boxed_radio_row{
  34.         :popup_list
  35.         {label="曲直:";
  36. //        list="全直\n曲直\n全曲";
  37.         list="全直";
  38.         key= "mjtysj1";
  39.         }
  40.         :popup_list
  41.         {label="边数:";
  42.         list="4\n6\n8";
  43.         key= "mjtysj2";
  44.         }
  45.         :popup_list
  46.         {label="角度:";
  47. //        list="全部直角\n非全直角\n全非直角";
  48.         list="全直角";
  49.         key= "mjtysj3";
  50.         }
  51.         :popup_list
  52.         {label="形状:";
  53.         list="T型\nZ型\nU型";
  54.         key= "mjtysj4";
  55.         }
  56. //        :button{label="详细数据";key="mjtysj5";}
  57.         }
  58.         :row{
  59.         :boxed_column{
  60.                                 label="数据库编号";               
  61.                                 :list_box{
  62.                                          key="mjlbk";
  63.                                          height=16;
  64.                                          }
  65.                      }
  66.          :boxed_column{
  67.                                 label="已选编号";               
  68.                                 :list_box{
  69.                                          key="mjlbk1";
  70.                                          height=16;
  71.                                          }
  72.                      }
  73.              }
  74.          :boxed_radio_row{
  75.          :button{label="添加(&t)";key="mjtysj5";}
  76.          :button{label="修改(&x)";key="mjtysj6";}
  77.          :button{label="删除(&s)";key="mjtysj7";}
  78.                          }       
  79.         ok_cancel;
  80. }
回复

使用道具 举报

 楼主| 发表于 2013-9-13 14:32:48 | 显示全部楼层
自己顶一下贴……就算没人帮忙顶起来有DCL的初学者应该也可以学习学习!
回复

使用道具 举报

 楼主| 发表于 2013-9-14 12:28:35 | 显示全部楼层
难道都没人对这个感兴趣......
回复

使用道具 举报

 楼主| 发表于 2013-9-16 11:38:10 | 显示全部楼层
此贴经过自己的折磨已经差不多解决!不过还需要点时间补一下bug  在此多谢 猫老师 的指点!
回复

使用道具 举报

发表于 2013-10-15 21:24:44 | 显示全部楼层
这个很不错!!!!
回复

使用道具 举报

 楼主| 发表于 2013-10-16 11:31:52 | 显示全部楼层
已经自己解决了
回复

使用道具 举报

发表于 2014-2-7 15:09:14 | 显示全部楼层
很好,想法不错
回复

使用道具 举报

发表于 2014-5-6 07:07:32 | 显示全部楼层
虽然不明白,努力学习中。。。,楼主辛苦,支持原创
回复

使用道具 举报

 楼主| 发表于 2014-6-22 16:22:19 | 显示全部楼层
要怎么才能把币收回来?
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-18 12:43 , Processed in 0.222424 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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