VB 如何判断文本框的内容是否完全显示
文本框中的内容如果很长,则只能显示其中的部分内容,那么如何判断文本框中的内容是否完全显示呢?我用的是多行文本框。...
文本框中的内容如果很长,则只能显示其中的部分内容,那么如何判断文本框中的内容是否完全显示呢?
我用的是多行文本框。 展开
我用的是多行文本框。 展开
展开全部
在窗体上放置两个文本框和一个命令按钮。
复制下面代码。
Private Sub Command1_Click()
Text1.Text = Text2.Text
If Int(Text1.Width / Me.TextWidth("A")) < Len(Text2.Text) Then
MsgBox "字符串过长。"
Else
MsgBox "OK。"
End If
End Sub
复制下面代码。
Private Sub Command1_Click()
Text1.Text = Text2.Text
If Int(Text1.Width / Me.TextWidth("A")) < Len(Text2.Text) Then
MsgBox "字符串过长。"
Else
MsgBox "OK。"
End If
End Sub
追问
问什么一个劲OK呀?
追答
我在VB6中测试通过的。
如果文本框和窗体的字体和字体大小一样应该没有问题的。
在Private Sub Command1_Click()后加上下面这句看看。
Set Me.Font = Text1.Font
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
dim w as integer
me.fontsize=text1.fontsize
w=textwidth(text1.text)
if w>text1.width-60 then
msgbox "NND,文字太多了!"
end if
me.fontsize=text1.fontsize
w=textwidth(text1.text)
if w>text1.width-60 then
msgbox "NND,文字太多了!"
end if
更多追问追答
追问
请问我用的是多行文本框如何判断呢?
追答
用API来实现:
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Const EM_GETLINECOUNT = &HBA
Private Sub Command1_Click()
Dim w As Long
w = SendMessage(Text1.hwnd, EM_GETLINECOUNT, 0, 0)
Me.Caption = w
Me.FontSize = Text1.FontSize
If w > (Text1.Height - 60) \ TextHeight("A") Then
MsgBox "NND,内容太多了"
End If
End Sub
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询