当前位置:编程学习 > VB >>

如何让VB取消选中text的文字

也就是说 无论怎样都不能选中
但其他功能都是可用的
补充:我要答案  不要 应该什么。。。  或者我自己找找(能找到我非这是干嘛?) 找参考(一样找不到)
追问:liuqiery@vip.qq.com我的邮箱。。。
答案:
方法有一些,有好的也有坏的
坏一点的方法是比较笨的


Private Sub Text1_Click()
Text1.SelLength = 0
End Sub

Private Sub Text1_DblClick()
Text1_Click
End Sub

Private Sub Text1_GotFocus()
Text1_Click
End Sub

Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
Text1_Click
End Sub
这样对TEXT的鼠标和键盘操作就会使选取的文字长度变为0,有时候不好用,因为这个方法不好
还有一种是用HOOK,这种方法比较好
不过代码比较长,这里放不下,我先写一下关键的部分,如果你要全部代码可以写邮件,我发给你,这种方法很强大
下面的代码,也就是说除了把字和TEXT文本框画上去,其他的所有操作都不管
Public Function WndProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

Select Case uMsg
Case WM_NCDESTROY ' 如果收到组件被销毁的消息,恢复源窗口过程处理函数
Call UnSubClass(hwnd)
Debug.Print "卸载子类化 " & Hex(hwnd); " 警告"

Case 133 '画边框
WndProc = CallWindowProc(GetProp(hwnd, OLDWNDPROC), hwnd, uMsg, wParam, lParam)
Exit Function
Case 15 '画背景
WndProc = CallWindowProc(GetProp(hwnd, OLDWNDPROC), hwnd, uMsg, wParam, lParam)
Exit Function
Case Else

End Select

End Function
把它设置为locked=true

上一个:VB定时弹窗怎么做阿!
下一个:求用vb编写的时钟代码

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,