问一道简单的VB题,求大神解答
设计一个对话框,里面用的是下拉组合框,其中一个组合框是字号,有个要求是:当输入自定义字号并按Enter键或输入字号且焦点离开该组合框后,文本框的字号变为所定义字号;(2)...
设计一个对话框,里面用的是下拉组合框,其中一个组合框是字号,有个要求是:当输入自定义字号并按Enter键或输入字号且焦点离开该组合框后,文本框的字号变为所定义字号;(2)如果输入的字号非法(小于或等于0、空或非数字),则保留原字体大小。第二个要求不知道怎么做,求解答这是我写的代码,第一个问题做出来了,就是第二个不会Private Sub Co4_KeyPress(KeyAscii As Integer)Select Case KeyAsciiCase 1 To Max Case ElseT1.FontSize = 10End SelectIf KeyAscii = 13 ThenT1.FontSize = Co4.TextEnd IfEnd Sub
最好能说下思路,谢谢了 展开
最好能说下思路,谢谢了 展开
2个回答
展开全部
先定义一个 Private 变量,加载对话框时,Load 事件里将现有字号存储。
if 新字号 <= 0 or not IsNumeric(新字号) ' 如果新字号不是数字或者小于等于零
新字号 = 原字号
else
新字号 = 下拉组合框的值
end if
if 新字号 <= 0 or not IsNumeric(新字号) ' 如果新字号不是数字或者小于等于零
新字号 = 原字号
else
新字号 = 下拉组合框的值
end if
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Sub Co4_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
on error resume next
T1.Font.Size = Cint(val(Co4.Text))
if err.number <> 0 then
err.clear
T1.Font.Size = 10
end if
End If
Select Case KeyAscii
Case 8 '允许倒退键功能
Case asc("0") To asc("9") ' 只允许输入0至9的数字
Case Else
KeyAscii = 0
End Select
End Sub
If KeyAscii = 13 Then
on error resume next
T1.Font.Size = Cint(val(Co4.Text))
if err.number <> 0 then
err.clear
T1.Font.Size = 10
end if
End If
Select Case KeyAscii
Case 8 '允许倒退键功能
Case asc("0") To asc("9") ' 只允许输入0至9的数字
Case Else
KeyAscii = 0
End Select
End Sub
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询