对话框帮助
好的,我想我在这件事上有些不知所措。我创建了一个对话框。有两列可供选择。我需要每一个选择做一个选项,但我不知道如何让他们走到一起。以下是我认为可行但没有成功的方法。(defun C:bd(/ bd)
(or c:bm$ (setq c:bm$ "3.5"))
(setq dcl_id (load_dialog "beam.dcl"))
(if (not (new_dialog "beam" dcl_id))
(exit))
(set_tile c:bm$ "1")
(action_tile "3.5" "(setq c:bm$ \"3.5\")")
(action_tile "5.25""(setq c:bm$ \"5.25\")")
(action_tile "7" "(setq c:bm$ \"7\")")
(action_tile "7.25" "(setq c:bm$ \"7.25\")")
(action_tile "9.25" "(setq c:bm$ \"9.25\")")
(action_tile "accept""(done_dialog)(setq userclick T)")
(action_tile "cancel""(done_dialog)(setq userclick nil)")
(start_dialog)(unload_dialog dcl_id)
(setq cmd c:bm$)
(if userclick
(cond
(= cmd "3.5" ) (setqq aa (= aa 2))
(= cmd "5.25" )
(= cmd "7" )
(= cmd "7.25" ) (setq bb (= bb 7))
(= cmd "9.25" )))
(if
(cond (= (+ aa bb) 9)
(command "-linetype" "s" "2x10" "")(command"-layer" "s" "s-frm-beam" "")(command "line" pause pause "")))
(princ))
您必须在DCL中使用带有键互动程序的action\u互动程序,类似(action\u互动程序“keyA”“(set\u tile“keyB\”“sth\”)。如果你在这里发布DCL,我们可以更容易地修复它 你说的是什么意思
这就是你想要实现的吗? 柯旭,
beam : dialog {
label = "Pick size of Beam";
: column {
: boxed_radio_column {
label = "Width";
: radio_button {
label = "3.5";
key = "3.5";
}
: radio_button {
label = "5.25";
key = "5.25";
}
: radio_button {
label = "7";
key = "7";
}
}
}
: column {
: boxed_radio_column {
label = "Depth";
: radio_button {
label = "7.25";
key = "7.25";
}
: radio_button {
label = "9.25";
key = "9.25";
}
: radio_button {
label = "11.25";
key = "11.25";
}
: radio_button {
label = "11.875";
key = "11.875";
}
: radio_button {
label = "14";
key = "14";
}
: radio_button {
label = "16";
key = "16";
}
: radio_button {
label = "18";
key = "18";
}
}
}
: row {
: button {
label = "&OK";
key = "accept";
fixed_width = true;
is_default = true;
}
: button {
label = "&Cancel";
key = "cancel";
fixed_width = true;
is_cancel = true;
}
}
}
在我贴出一个wxample后,我想了想,但我无法回到电脑前。
在一列中,我选择3.5、5.25或7。。。。然后在另一列中,我可以选择14,16,18。
所以取决于我打了哪两个,他们会做一些不同的事情。比如画一条线,把它放在一个叫做3.5x14或7x16的lietype上。从那以后。在这个例子中,我有9个选项可以完成。 我想你在找这个文件
2)
(普林斯) 柯旭,
我不知道在哪里添加你写的内容。我以为它应该进入lsp。 抱歉迟到了^^我一直在现场工作^^
由于我的英语很差,我仍然不清楚你的想法,但我认为是这样的:
-您不应该用“c”分配变量:
-当你退出对话框时,你基于宽度和深度选择做某事的功能应该适用
因此,您可以:
beam : dialog {
label = "Pick size of Beam";
: column {
: boxed_radio_column {key = "kWidth";
label = "Width";
: radio_button {
label = "3.5";
key = "3.5";
}
: radio_button {
label = "5.25";
key = "5.25";
}
: radio_button {
label = "7";
key = "7";
}
}
}
: column {
: boxed_radio_column {key = "kDepth";
label = "Depth";
: radio_button {
label = "7.25";
key = "7.25";
}
: radio_button {
label = "9.25";
key = "9.25";
}
: radio_button {
label = "11.25";
key = "11.25";
}
: radio_button {
label = "11.875";
key = "11.875";
}
: radio_button {
label = "14";
key = "14";
}
: radio_button {
label = "16";
key = "16";
}
: radio_button {
label = "18";
key = "18";
}
}
}
: row {
: button {
label = "&OK";
key = "accept";
fixed_width = true;
is_default = true;
}
: button {
label = "&Cancel";
key = "cancel";
fixed_width = true;
is_cancel = true;
}
}
}
4
页:
[1]