Qonfire 发表于 2022-7-6 08:22:57

隐藏还原对话框

你好
 
我无法隐藏和恢复对话。看起来,隐藏对话框应该是一个循环任务。我希望有人回答以下问题。
 
1.要隐藏对话框,应该是(done\u dialog 4),比如说,要检索它,(start\u dialog)。Q: 启动对话框加载空白对话框。我可以选择不从空白处加载它吗。,意思是在隐藏之前保留用户选择。
 
2.如果对话框开始为空,则代码应能够以这样的方式重新插入用户选择的数据。Q: 是这样吗?
 
谢谢
 
 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(setq flag 4)

(setq dcl_id (load_dialog "test_dist.dcl"))       

(while (> flag 2)

(if (not (new_dialog "test1" dcl_id))       
   (exit)                                       
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(setq Ldist ( getdist "\nGet Distance B.W : "))
(setq Sdist ( getdist "\nGet Distance B.L: "))

(setq lhz '("Light Hazard" "Ordinary Hazard" "Extra Hazard >=0.25" "Extra Hazard <=0.25" ))

(start_list "selections1")                               
(mapcar 'add_list lhz)                       
(end_list)



(action_tile "selections1" (strcat "(setq item(atoi (get_tile \"selections1\")))

(cond

( (= item 3)   (setq maxd 15) (setq maxa 130) (set_tile \"edbox1\" \"15\")(set_tile \"edbox2\" \"130\"))

( (= item 2)   (setq maxd 12) (setq maxa 100) (set_tile \"edbox1\" \"12\")(set_tile \"edbox2\" \"100\"))                  

( (= item 1)   (setq maxd 15) (setq maxa 130) (set_tile \"edbox1\" \"15\")(set_tile \"edbox2\" \"130\"))                  

( (= item 0)   (setq maxd 15) (setq maxa 225) (set_tile \"edbox1\" \"15\")(set_tile \"edbox2\" \"225\"))
   ))"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(action_tile "opt1" "(done_dialog 4)")

(setq flag (start_dialog))

(if (= flag 4)(getdist "\npick a point"))


         
)      







;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(unload_dialog dcl_id)

 
非常感谢。

Qonfire 发表于 2022-7-6 08:26:54

 
有趣的因此,不是将永久DCL文件保存在某个地方,而是在每次调用命令时重新创建一个临时DCL文件?
 
确实很有趣。
 

Qonfire 发表于 2022-7-6 08:30:32

这个提示更有价值

pBe 发表于 2022-7-6 08:33:39

 
是的,我只在DCL文件只有几行的小对话框中使用这种方法-它很方便(我不需要提醒用户将额外的文件保存到支持路径)并且不引人注目(在程序完成后清理文件,不留下任何命令痕迹);当然,对于较大的应用程序(比如说这个),其中DCL文件可能只有几百行长,我不会创建临时文件,而是在特定位置检查文件。

Qonfire 发表于 2022-7-6 08:38:28

信息量很大,李。。。教育,甚至一如既往。
 
干杯,伙计!

Lee Mac 发表于 2022-7-6 08:41:49

不客气伙计

Qonfire 发表于 2022-7-6 08:42:19

我没有得到什么,无论我做什么---done\u dialog返回(0 0)例如start\u dialog 0。(无法保存完成\u对话框4)返回值4
Neep帮助。

Lee Mac 发表于 2022-7-6 08:45:36

 
阅读帮助文档。
 
 
 

Qonfire 发表于 2022-7-6 08:49:25

start\u对话框
 
返回值
start\u dialog函数返回传递给done\u dialog的可选状态。如果(完成对话框4)开始对话框是4?我阅读帮助
 
 
我还是不明白。请稍加阐述,不胜感激。
 
非常感谢。

BlackBox 发表于 2022-7-6 08:53:20

start\u dialog函数将返回传递给done\u dialog函数的状态参数的值。
页: [1] 2
查看完整版本: 隐藏还原对话框