VB Labe控件换行将少一个空格

zy124934 2020-05-07 11:55:46
Private Sub Command1_Click()
Label1.Caption = "123456789012345" & vbCrLf
Label1.Caption = Label1.Caption & Space(15) & 1 & vbCrLf
Label1.Caption = Label1.Caption & Space(14) & 11 & vbCrLf
Label1.Caption = Label1.Caption & Space(13) & 111 & vbCrLf
Label1.Caption = Label1.Caption & Space(12) & 1111 & vbCrLf

Label4.Caption = Space(14) & 1 & vbCrLf
Label4.Caption = Label4.Caption & Space(14) & 11 & vbCrLf
Label4.Caption = Label4.Caption & Space(13) & 111 & vbCrLf
Label4.Caption = Label4.Caption & Space(12) & 1111 & vbCrLf

Label5.Caption = Space(15) & 1 & vbCrLf
Label5.Caption = Label5.Caption & Space(14) & 11 & vbCrLf
Label5.Caption = Label5.Caption & Space(13) & 111 & vbCrLf
Label5.Caption = Label5.Caption & Space(12) & 1111 & vbCrLf
End Sub

Private Sub Command2_Click()
Label2.Caption = Space(2) & "一二三四" & Chr(10) & Chr(32) & Chr(32) & Chr(32) & "一"
End Sub

Private Sub Command3_Click()
Print "12345"
Print Space(1) & "123"
End Sub

Private Sub Command4_Click()
Text1.Text = Label1
End Sub
运行结果:

大家可以看到print打印时,换行后space的空格都打印出来了;
在Text框中,换行后所有的space空格也显示出来了;
在Label中,只要一换行space空格就会少一个;
请大神解释一下原因。
...全文
200 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
无·法 2020-05-25
  • 打赏
  • 举报
回复
等vb6开源了大神们修复一下这个bug
脆皮大雪糕 2020-05-24
  • 打赏
  • 举报
回复
引用 6 楼 zy124934 的回复:
看来大家都有这种情况,只是没有注意,应该是VB的bug吧。
因为一般lable不会拿来展示有特殊格式要求的文字。一行字了事了。
zy124934 2020-05-23
  • 打赏
  • 举报
回复
看来大家都有这种情况,只是没有注意,应该是VB的bug吧。
zcyzzzm 2020-05-07
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
s = "123456789" & vbCrLf
s = s & Space(1) & "123456789" & Space(1) & vbCrLf
Label1.Tag = ""
Label1.Caption = s
End Sub

Private Sub Label1_Change()
If Label1.Tag = "" And Label1.Alignment = 0 Then
Label1.Tag = "处理"
Label1.Caption = Replace(Label1.Caption, vbCrLf & " ", vbCrLf & " ")
End If
End Sub

看来需要这样处理了,哈哈,这个vb够奇怪的
zcyzzzm 2020-05-07
  • 打赏
  • 举报
回复
哈哈,还有这种情况啊,发现就是左对齐不行,居中和右对齐都正常的

Label1.Caption = "123456789" & vbCrLf
Label1.Caption = Label1.Caption & Space(1) & "123456789" & Space(1) & vbCrLf
舉杯邀明月 2020-05-07
  • 打赏
  • 举报
回复
真没注意到,竟然会有这种Bug。


赶紧试了一下我自己写的Label控件,还好……正常。
脆皮大雪糕 2020-05-07
  • 打赏
  • 举报
回复
很有意思, 试了一下,只要最左边是空格就会出现你这个现象。如果最左边不是空格好像就不会。 怀疑是alignment属性的处理出的乱子? 进而试一下最右边有空格的情况下alignment为1有没有问题。好像没问题
小灯塔 2020-05-07
  • 打赏
  • 举报
回复
可能是VB的BUG,只要是有规律的,就可以处理

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧