乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 17|回复: 6

[编程交流] 对话框帮助

[复制链接]

33

主题

96

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
170
发表于 2022-7-6 08:41:33 | 显示全部楼层 |阅读模式
好的,我想我在这件事上有些不知所措。我创建了一个对话框。有两列可供选择。我需要每一个选择做一个选项,但我不知道如何让他们走到一起。以下是我认为可行但没有成功的方法。
  1. (defun C:bd(/ bd)                                             
  2. (or c:bm$ (setq c:bm$ "3.5"))                              
  3. (setq dcl_id (load_dialog "beam.dcl"))                     
  4. (if (not (new_dialog "beam" dcl_id))                        
  5. (exit))                                                     
  6. (set_tile c:bm$ "1")                                       
  7. (action_tile "3.5" "(setq c:bm$ "3.5")")            
  8. (action_tile "5.25"  "(setq c:bm$ "5.25")")           
  9. (action_tile "7" "(setq c:bm$ "7")")                     
  10. (action_tile "7.25" "(setq c:bm$ "7.25")")                  
  11. (action_tile "9.25" "(setq c:bm$ "9.25")")               
  12. (action_tile "accept"  "(done_dialog)(setq userclick T)")   
  13. (action_tile "cancel"  "(done_dialog)(setq userclick nil)")
  14. (start_dialog)(unload_dialog dcl_id)                        
  15. (setq cmd c:bm$)                                            
  16. (if userclick                                               
  17.    (cond                                                     
  18.      (= cmd "3.5" ) (setqq aa (= aa 2))
  19.      (= cmd "5.25" )
  20.      (= cmd "7" )   
  21.       
  22.      (= cmd "7.25" ) (setq bb (= bb 7))
  23.      (= cmd "9.25" )))
  24. (if
  25.    (cond (= (+ aa bb) 9)
  26.   (command "-linetype" "s" "2x10" "")(command  "-layer" "s" "s-frm-beam" "")(command "line" pause pause "")))
  27.       
  28.                                                                                       
  29.           (princ))
回复

使用道具 举报

22

主题

326

帖子

185

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
243
发表于 2022-7-6 08:59:52 | 显示全部楼层
您必须在DCL中使用带有键互动程序的action\u互动程序,类似(action\u互动程序“keyA”“(set\u tile“keyB\”“sth\”)。如果你在这里发布DCL,我们可以更容易地修复它
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 09:02:40 | 显示全部楼层
你说的是什么意思
 
 
这就是你想要实现的吗?
回复

使用道具 举报

33

主题

96

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
170
发表于 2022-7-6 09:20:46 | 显示全部楼层
柯旭,
 
  1. beam : dialog {
  2.      label = "Pick size of Beam";
  3.      : column {
  4.        : boxed_radio_column {
  5.          label = "Width";
  6.          : radio_button {
  7.            label = "3.5";
  8.            key = "3.5";
  9.          }
  10.          : radio_button {
  11.            label = "5.25";
  12.            key = "5.25";
  13.          }
  14.          : radio_button {
  15.            label = "7";
  16.            key = "7";
  17.          }
  18.          }
  19.          }
  20.       : column {
  21.        : boxed_radio_column {
  22.          label = "Depth";
  23.          : radio_button {
  24.            label = "7.25";
  25.            key = "7.25";
  26.          }
  27.          : radio_button {
  28.            label = "9.25";
  29.            key = "9.25";
  30.          }
  31.          : radio_button {
  32.            label = "11.25";
  33.            key = "11.25";
  34.          }
  35.          
  36.          : radio_button {
  37.            label = "11.875";
  38.            key = "11.875";
  39.          }
  40.          
  41.          : radio_button {
  42.            label = "14";
  43.            key = "14";
  44.          }
  45.          
  46.          : radio_button {
  47.            label = "16";
  48.            key = "16";
  49.          }
  50.          
  51.          : radio_button {
  52.            label = "18";
  53.            key = "18";
  54.          }
  55.          }
  56.      }
  57.      : row {
  58.        : button {
  59.          label = "&OK";
  60.          key = "accept";
  61.          fixed_width = true;
  62.          is_default = true;
  63.        }  
  64.        : button {
  65.          label = "&Cancel";
  66.          key = "cancel";
  67.          fixed_width = true;
  68.          is_cancel = true;
  69.        }
  70.      }
  71. }

 
在我贴出一个wxample后,我想了想,但我无法回到电脑前。
在一列中,我选择3.5、5.25或7。。。。然后在另一列中,我可以选择14,16,18。
所以取决于我打了哪两个,他们会做一些不同的事情。比如画一条线,把它放在一个叫做3.5x14或7x16的lietype上。从那以后。在这个例子中,我有9个选项可以完成。
回复

使用道具 举报

33

主题

96

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
170
发表于 2022-7-6 09:26:52 | 显示全部楼层
我想你在找这个文件
2)
(普林斯)
回复

使用道具 举报

33

主题

96

帖子

65

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
170
发表于 2022-7-6 09:37:44 | 显示全部楼层
柯旭,
我不知道在哪里添加你写的内容。我以为它应该进入lsp。
回复

使用道具 举报

22

主题

326

帖子

185

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
243
发表于 2022-7-6 09:47:40 | 显示全部楼层
抱歉迟到了^^我一直在现场工作^^
由于我的英语很差,我仍然不清楚你的想法,但我认为是这样的:
-您不应该用“c”分配变量:
-当你退出对话框时,你基于宽度和深度选择做某事的功能应该适用
因此,您可以:
 
  1. beam : dialog {
  2.      label = "Pick size of Beam";
  3.      : column {
  4.        : boxed_radio_column {[color=red]key = "kWidth";[/color]
  5.          label = "Width";
  6.          : radio_button {
  7.            label = "3.5";
  8.            key = "3.5";
  9.          }
  10.          : radio_button {
  11.            label = "5.25";
  12.            key = "5.25";
  13.          }
  14.          : radio_button {
  15.            label = "7";
  16.            key = "7";
  17.          }
  18.          }
  19.          }
  20.       : column {
  21.        : boxed_radio_column {[color=red]key = "kDepth";[/color]
  22.          label = "Depth";
  23.          : radio_button {
  24.            label = "7.25";
  25.            key = "7.25";
  26.          }
  27.          : radio_button {
  28.            label = "9.25";
  29.            key = "9.25";
  30.          }
  31.          : radio_button {
  32.            label = "11.25";
  33.            key = "11.25";
  34.          }
  35.          
  36.          : radio_button {
  37.            label = "11.875";
  38.            key = "11.875";
  39.          }
  40.          
  41.          : radio_button {
  42.            label = "14";
  43.            key = "14";
  44.          }
  45.          
  46.          : radio_button {
  47.            label = "16";
  48.            key = "16";
  49.          }
  50.          
  51.          : radio_button {
  52.            label = "18";
  53.            key = "18";
  54.          }
  55.          }
  56.      }
  57.      : row {
  58.        : button {
  59.          label = "&OK";
  60.          key = "accept";
  61.          fixed_width = true;
  62.          is_default = true;
  63.        }  
  64.        : button {
  65.          label = "&Cancel";
  66.          key = "cancel";
  67.          fixed_width = true;
  68.          is_cancel = true;
  69.        }
  70.      }
  71. }
  1. 4
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-7 09:05 , Processed in 0.382230 second(s), 66 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表