明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2168|回复: 9

如何让数字部分上下对齐?

[复制链接]
发表于 2004-2-15 14:44:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2004-2-16 22:53:18 编辑

对话框中有个列表框,想让列表框中的内容按要求的格式显示,就是数字部分上下对齐。



编了个程序,但达不到要求。请高手指点迷津。




本帖子中包含更多资源

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

x
发表于 2004-2-15 16:20:00 | 显示全部楼层
把你做出来的效果拿出来看看


这样说很不形象
 楼主| 发表于 2004-2-15 16:37:00 | 显示全部楼层
其实就是求字符串的长度问题,如果知道了在dcl中用的是什么字体,字高是多少,问题也就解决了。
 楼主| 发表于 2004-2-16 12:01:00 | 显示全部楼层
有谁知道在dcl中用的是什么字体,字高是多少,拜托告知。
发表于 2004-2-16 12:35:00 | 显示全部楼层
你的问题跟字高和字体有什么关系吗?2楼的问题怎么不看看
 楼主| 发表于 2004-2-16 22:56:00 | 显示全部楼层
已将文件传上去了,请帮忙解决。
发表于 2004-2-17 21:55:00 | 显示全部楼层
从另一个角度考虑一下吧, 试试下面的 (defun c:try ( / mylist newlist str)
(setq mylist (list "高大 建筑" "窗*户" "门/门1" "fff"))
(setq len (1- (length mylist)))
(while (>= len 0)
(setq str (nth len mylist))
(setq mystrlen (strlen str));求字符串的度
(setq num (- 25 mystrlen))
(while (>= num 1) ;使字符串达到规定的长度。当长度不足时在
;字符串的后面添加"-"
(setq str (strcat str "-"))
(setq num (- num 1))
)
(setq str (strcat str (itoa len)));直接使用ITOA不是更好吗?
(setq newlist (cons str newlist)) ;实际上就是一个固定总字符数,算算算术的问题
(setq len (1- len))
) (setq dcl_id (load_dialog "mytry.dcl"))
(if (null (new_dialog "mydcl" dcl_id))
(exit)
) (start_list "findok" 3)
(if newlist
(mapcar (quote add_list) newlist)
(mapcar (quote add_list) nil)
)
(end_list)
(start_dialog)
(unload_dialog dcl_id)
(princ)
)
 楼主| 发表于 2004-2-18 13:44:00 | 显示全部楼层
感谢7楼。你说的方法在win2000操作系统中能行,但我用的是win98,在win98中,"-""f""i"等字母所占位子不到一个字符宽,所以还是不能达到目的。
 楼主| 发表于 2004-2-19 21:32:00 | 显示全部楼层
看来还真是个难题
发表于 2004-2-20 08:30:00 | 显示全部楼层
按以上方法,中间不使用"-",使用\t试试
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-10-2 01:32 , Processed in 0.209097 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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