明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1400|回复: 8

[提问] dcl文件通过button选择文件

[复制链接]
发表于 2019-5-31 12:05:01 | 显示全部楼层 |阅读模式
我想通过button来选择文件所在的路径,有没有大神帮忙指点一下,谢谢。

本帖子中包含更多资源

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

x
发表于 2019-5-31 12:14:33 | 显示全部楼层
假如你选取了文件“1_hd_ys.txt”并存于变量wjm中,则使用
(setq ljmc  (strcat  (vl-filename-directory wjm) “\\”)
取得它所在的路径名。
发表于 2019-5-31 14:06:20 | 显示全部楼层
单纯的取得文件 个人习惯用 DosLib 所提供的函数

(dos_getfiled "Select a file" "E:\\MyDwg\\" "Drawing files (*.dwg)|*.dwg|All files (*.*)|*.*||")
 楼主| 发表于 2019-5-31 15:50:09 | 显示全部楼层
yshf 发表于 2019-5-31 12:14
假如你选取了文件“1_hd_ys.txt”并存于变量wjm中,则使用
(setq ljmc  (strcat  (vl-filename-directory  ...

谢谢,可能是我没表达清楚,不过这个问题我自己已经解决了,很感谢。
 楼主| 发表于 2019-5-31 15:50:56 | 显示全部楼层
Andyhon 发表于 2019-5-31 14:06
单纯的取得文件 个人习惯用 DosLib 所提供的函数

(dos_getfiled "Select a file" "E:\\MyDwg\\" "Drawin ...

谢谢,可能是我没表达清楚,不过这个问题我自己已经解决了,很感谢。
发表于 2021-3-17 23:31:50 | 显示全部楼层
请问楼主怎么解决的?我也遇到这个难题了
 楼主| 发表于 2021-3-18 09:54:27 | 显示全部楼层
本帖最后由 JHX948954875 于 2021-3-18 10:13 编辑
itoboy 发表于 2021-3-17 23:31
请问楼主怎么解决的?我也遇到这个难题了


这是dcl文件
tt:dialog{
label="xxx对话框";
        :column{
:row{
        :button{
                label="数据文件";
                key="yz_txtf";
                width=8.7;
                }
        :edit_box{
                edit_width=60;
                key="yz_data_file";
                }
        }
}
:boxed_row{
                :button{
                       label="指点绘图(&P)";
                       key="accept";
                       is_default=true;
                       allow_accept=true;
                       width=2;
                       }
                :button{
                       key="cancel";
                       label="取消";
                       is_cancel=true;
                       width=2;
                       }
            }
}


这是lsp文件
(defun c:TT()
  (setq dlg_id (load_dialog "C:\\Users\\Administrator\\Desktop\\tmp"))
  (if (< dlg_id 0)(exit))
  (if (not (new_dialog "tt" dlg_id)) (exit))
  (action_tile "yz_txtf" "(d_getfile_yz)");这是要问的
  (action_tile "accept" "(done_dialog 1)")
  (action_tile "cancel" "(done_dialog -1)")
  (setq std (start_dialog ))
  (unload_dialog dlg_id)
  )
(defun d_getfile_yz ( )
  (setq yz_data_file (getfiled "数据文件"  "C:/Users/Administrator/Desktop/"      "txt"     2))
  (if  yz_data_file
    (set_tile "yz_data_file" yz_data_file)
    (set_tile "yz_data_file" "")
    )
  )
  
发表于 2021-3-20 21:11:07 | 显示全部楼层
JHX948954875 发表于 2021-3-18 09:54
这是dcl文件
tt:dialog{
label="xxx对话框";

感谢感谢,本来抱着试试的心态,想不到楼主回帖了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-16 21:06 , Processed in 0.180700 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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