找回密码
 加入
搜索
查看: 3116|回复: 6

[GUI管理] 关于label中的文字对齐问题

  [复制链接]
发表于 2017-1-20 22:42:52 | 显示全部楼层 |阅读模式
我想要输出的结果如下:
菜A 101+122    =203
菜B 18+33        =51
菜C 91+108      =199
菜D 8+6           =15

代码入下
        Local $sResult=""
        For $i=1 To $iKinds
                $sResult = $sResult & GUICtrlRead($idFm_food[$i]) & " " & GUICtrlRead($idFm_Weight_DS[$i]) &"+"& GUICtrlRead($idFm_Weight_YP[$i]) & @TAB & "=" & $iFinalWeight[$i] &@CRLF
        Next
        GUICtrlSetData($idFm_Label, $sResult)
用@TAB会有一个问题就是出现下面这个情况:
菜A 101+122    =203
菜B 18+33        =51
菜C 91+108      =199
菜D 8+6   =15

能力有限,求助方法解决
发表于 2017-1-20 22:51:37 | 显示全部楼层
label 的话完全可以使用两个 label控件,一个为计算式,一个为结果,这样极其简单

如果是edit这类就得看使用场景了,如果只能使用一个控件,那就要分别计算每行到=号的当前字体像素距离,然后找到最长的,再分别在其它行=号前添加空格并计算,比较繁琐
 楼主| 发表于 2017-1-20 23:25:26 | 显示全部楼层
回复 2# afan


    我现在的实现方式也是两个label,就是想知道能否在一个label里用比较简单的方式去实现
发表于 2017-1-21 09:11:08 | 显示全部楼层
应该只能计算长度了,好像没有自动调节的功能。用StringFormat
发表于 2017-1-24 17:48:33 | 显示全部楼层
我就用的AFAN说的方法,长度留够就可以了。
发表于 2017-2-10 21:32:32 | 显示全部楼层
把label设置的一样长,足够长
发表于 2017-2-10 21:32:35 | 显示全部楼层
把label设置的一样长,足够长
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-23 18:18 , Processed in 0.085683 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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