找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 822|回复: 3

[求助] [求助]:请教怎么给文字编辑对话框加个高度项

[复制链接]
发表于 2006-1-4 19:18:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
我看了下书,找了个程序套了一下,不成
请高手帮我看一下,错了或者不好的多多指点
bjwz.dcl如下:
bjwz:dialog {label="编辑文字";
             :row{
                  :edit_box{label="内容:";key="wz_c";edit_width=40;}
                  :edit_box{label="字高:";key="wz_h";edit_width=8;}
                  }
             spacer_1;
             ok_cancel;
             }
bjwz.lsp如下:
(defun c:dhwz()
       (setvar "cmdecho" 0)
       (dcl_bjwz)
       (prin1)
)

(defun dcl_bjwz()
       (setq entlist (entget (car (entsel "\nPlease select a Text:"))))      
       (setq dcl_id (load_dialog "bjwz"))
       (new_dialog "bjwz" dcl_id)
       (set_tile "edit_c" (cdr (assoc 1 entlist)))
       (set_tile "edit_h" (rtos (cdr (assoc 40 entlist))))
       (action_tile "accept" "(ok_bjwz)(done_dialog 1)")
       (start_dialog)
)

(defun ok_bjwz()
       (setq dt_c (list (cons 1 (get_tile "edit_c"))))
       (setq dt_h (list (cons 40 (atof (get_tile "edit_h")))))
       (setq entlist (subst dt_c (assoc 1 entlist) entlist))
       (setq entlist (subst dt_h (assoc 40 entlist) entlist))
       (entmod entlist)
)
还请教对话框中edit_box的高度怎么指定?
还有变量entlist在两个函数中 这样是否有效?
烦请高手指点
谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-1-4 20:03:37 | 显示全部楼层
edit_box高度用height=**来表示,另外程序中有几处错误,均以更改过来!
1、set_tile 后所跟的key都不对,你对照以下dcl文件和lsp文件就可以看出来;
2、
  1. (setq dt_c (list (cons 1 (get_tile "edit_c"))))
  2. (setq dt_h (list (cons 40 (atof (get_tile "edit_h")))))

应改为:
  1. (setq dt_c (cons 1 (get_tile "wz_c")))
  2.   (setq dt_h (cons 40 (atof (get_tile "wz_h"))))

3、书写格式,一般在加载对话框文件时都要先加上一个判断语句!当然,这个可能不算大问题,没有它也可以正常运行,但这是一个良好的书写习惯!
我把更改后的文件传上来:
lisp文件:
  1. (defun dcl_bjwz        ()
  2.   (setq entlist (entget (car (entsel "\nPlease select a Text:"))))
  3.   (if (> 0 (setq dcl_id (load_dialog "bjwz")))
  4.     (progn
  5.       (princ "\n 未能加载对话框")
  6.     )
  7.   )
  8.   (if (= null (new_dialog "bjwz" dcl_id))
  9.     (progn
  10.       (princ "\n未能显示输入对话框")
  11.       (exit)
  12.     )
  13.     (progn
  14.       (set_tile "wz_c" (cdr (assoc 1 entlist)))
  15.       (set_tile "wz_h" (rtos (cdr (assoc 40 entlist))))
  16.       (action_tile "accept" "(ok_bjwz)(done_dialog 1)")
  17.       (start_dialog)
  18.       (unload_dialog dcl_id)
  19.     )
  20.   )
  21. )

  22. (defun ok_bjwz ()
  23.   (setq dt_c (cons 1 (get_tile "wz_c")))
  24.   (setq dt_h (cons 40 (atof (get_tile "wz_h"))))
  25.   (setq entlist (subst dt_c (assoc 1 entlist) entlist))
  26.   (setq entlist (subst dt_h (assoc 40 entlist) entlist))
  27.   (entmod entlist)
  28. )

dcl文件:
  1. bjwz:dialog {label="编辑文字";
  2.         :row{
  3.                 :edit_box{
  4.                 label="内容:";
  5.                 key="wz_c";
  6.                 edit_width=40;
  7.                 height=1.5;
  8.                 }
  9.                 :edit_box{
  10.                 label="字高:";
  11.                 key="wz_h";
  12.                 edit_width=8;
  13.                 height=1.5;
  14.                 }
  15.         }
  16. spacer_1;
  17. ok_cancel;
  18. }
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-4 20:32:17 | 显示全部楼层
十分感谢 无痕兄 这么详尽的解答
打包好好学习下
介意给个QQ么?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-1-5 13:11:33 | 显示全部楼层
最初由 eobser 发布
[B]十分感谢 无痕兄 这么详尽的解答
打包好好学习下
介意给个QQ么? [/B]

不要客气!
昨天晚上已经给你发送悄悄话了,不知收到没有!也不知道你的QQ是多少,所以没有能够加你!我经常隐身,主要是怕一些无聊的骚扰而已!加我时可以先表明身份!其实在论坛里就有我的号!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-21 08:12 , Processed in 0.174056 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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