VB 如何判断文本框的内容是否完全显示

文本框中的内容如果很长,则只能显示其中的部分内容,那么如何判断文本框中的内容是否完全显示呢?我用的是多行文本框。... 文本框中的内容如果很长,则只能显示其中的部分内容,那么如何判断文本框中的内容是否完全显示呢?
我用的是多行文本框。
展开
 我来答
ireray5
2011-12-03 · TA获得超过396个赞
知道小有建树答主
回答量:557
采纳率:0%
帮助的人:363万
展开全部
在窗体上放置两个文本框和一个命令按钮。
复制下面代码。
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
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
牛人影视
2011-12-03 · TA获得超过1395个赞
知道大有可为答主
回答量:1491
采纳率:0%
帮助的人:1617万
展开全部
dim w as integer
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
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式