SendKeys "{CAPSLOCK}"
函数有没有第二个参数了?
好久没用vb了
试一下发送tab建
函数有没有第二个参数了?
好久没用vb了
试一下发送tab建
解决方案 »
- 讀取 ListBox 中的每一個元件
- 把一个800多字符的字符串存入SQL数据库中
- vb目前比较熟悉,想找几个大中型的项目代码学习一下,熟悉一下业务知识?
- 为什么我的vb引用中没有inside com+component type library
- 安装怎样使程序开机时就启动?
- 菜鸟问题!!按一下按扭在text框中随机出现1-10的数字该怎样完成啊?绝对给分
- 第一次来,请大家多照顾了。请问在vc下用ado怎样动态加载数据源,即弹出属性链接对话框
- 上网后,怎样得到IP地址。
- 我做了一个控件,其中用了Tabstript控件,所以要保证在用户的机器上system目录下有comctl32.ocx,我怎么发布我的控件,也就是说如果用户没有comctl32.ocx,我就要把它拷到用户的system下??请教各位。
- 如何使用vb6.0中的msflexgrid进行大量输入(vbqing)email:[email protected]
- 增加专家分和可用分的方法。
- 在vb中有没有类似substring 的函数
試驗一下:
AppActivate shell(text1.text,vbNormalFocus)
Sendkeys "{CAPSLOCK}"
AppActivate shell(Text1,vbNormalFocus)
Sendkeys "{CAPSLOCK}"
Const KEYEVENTF_EXTENDEDKEY = &H1
Const KEYEVENTF_KEYUP = &H2
Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Sub Text1_GotFocus()
keybd_event VK_CAPITAL, 0, 0, 0
keybd_event VK_CAPITAL, 0, KEYEVENTF_KEYUP, 0
End Sub
Option Explicit
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
Private Declare Function MapVirtualKey Lib "user32" Alias "MapVirtualKeyA" (ByVal wCode As Long, ByVal wMapType As Long) As LongConst KEYEVENTF_EXTENDEDKEY = &H1
Const KEYEVENTF_KEYUP = &H2Public Sub SetNumLock(ByVal bLock As Boolean)
Dim i As Boolean, ScanCode As Long
i = CBool(GetKeyState(vbKeyNumlock) And vbShiftMask)
If i <> bLock Then
ScanCode = MapVirtualKey(vbKeyNumlock, 0)
Call keybd_event(vbKeyNumlock, ScanCode, 0, 0)
Call keybd_event(vbKeyNumlock, ScanCode, KEYEVENTF_KEYUP, 0)
End If
End Sub
Public Sub SetScrollLock(ByVal bLock As Boolean)
Dim i As Boolean, ScanCode As Long
i = CBool(GetKeyState(vbKeyScrollLock) And vbShiftMask)
If i <> bLock Then
ScanCode = MapVirtualKey(vbKeyScrollLock, 0)
Call keybd_event(vbKeyScrollLock, ScanCode, 0, 0)
Call keybd_event(vbKeyScrollLock, ScanCode, KEYEVENTF_KEYUP, 0)
End If
End Sub
Public Sub SetCapsLock(ByVal bLock As Boolean)
Dim i As Boolean, ScanCode As Long
i = CBool(GetKeyState(vbKeyCapital) And vbShiftMask)
If i <> bLock Then
ScanCode = MapVirtualKey(vbKeyCapital, 0)
Call keybd_event(vbKeyCapital, ScanCode, 0, 0)
Call keybd_event(vbKeyCapital, ScanCode, KEYEVENTF_KEYUP, 0)
End If
End SubPrivate Sub Form_Load()
'调用例:
SetCapsLock True
'SetScrollLock True
'SetNumLock True'SetCapsLock False
'SetScrollLock False
'SetNumLock FalseEnd Sub
对于数据库程序),以下是笔者在开发应用程序时的一些技巧,希望对爱好
VB的朋友有帮助。1、 限制TextBox只能输入数字。 我们只需要判断KeyAscii是否在48-57之间就可以达到目的,但我们还会
要用到退格键的,所以必须加上KeyAscii <> 8。Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii <> 8 And KeyAscii < 48 Or KeyAscii > 57 Then
Beep
KeyAscii = 0
End If
End Sub2、自动将输入的英文转为小写/大写。 如果在KeyPress事件里使用Ucase$和Lcase$,那么当你输入abc时,Text
Box里的结果会是CBA(具体原因这里不多说),我们只好判断它的KeyAscii,
刚好大写与小写之间是相差32,所以……看下面的程序。'大写转小写
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii >= 65 And KeyAscii <= 90 Then
KeyAscii = KeyAscii + 32
End If
End Sub'小写转大写
Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii >= 97 And KeyAscii <= 122 Then
KeyAscii = KeyAscii - 32
End If
End Sub3、使两个TextBox同步的方法。 这种方法怎么解释呢?第二个等于第一个就行了:-)。Private Sub Text1_KeyPress(KeyAscii As Integer)
Text2=Text1
End Sub4、按下 Enter 键之后,光标自动移到下一个控件。 当KeyAscii为13(回车)时,Send一个Tab键给它就行了。Private Sub Text1_KeyPress (KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys “{tab}”
KeyAscii = 0
End If
End Sub5、当光标移到TextBox时自动选定其中的整串文字。 当对象得到焦点时,从最前面开始选取(SelStart=0),选取的
长度为文本长度(Len(Text1))。Private Sub Text1_GotFocus()
Text1.SelStart = 0
Text1.SelLength = Len(Text1)
End Sub6、当光标移到TextBox时改变其文字颜色。 当TextBox得到焦点时(GotFocus)改变文本颜色,失去焦点时(
LostFocus)将还原文本颜色,ForeColor是设置文本的前景色。'当光标移到TextBox时文字设置为红色
Private Sub Text1_GotFocus()
Text1.ForeColor = vbRed
End Sub'当光标移出TextBox时文字设置为黑色
Private Sub Text1_LostFocus()
Text1.ForeColor = vbBlack
End Sub 以上代码只要将Text1.ForeColor改为Text1.BackColor即可改变TextBox
的背景色。我补充一些:
在使用textbox的时候,我喜欢把它的lock属性设为true,所有textbox里显示的内容都是在程序里控制设定的,这样的好处是利于控制,而且应用到password上,只要判断输入字符的多少,让文本框按数量显示星号,真正的输入仍然存在变量里,就比用textbox.passwordchar要好