VB 去除文本框粘贴功能

该篇博客介绍了一种VB代码实现禁用文本框粘贴功能的方法,通过设置窗口过程来拦截WM_PASTE消息,从而阻止文本框的粘贴操作。此外,还列举了多个VB相关的教程和技巧链接。
摘要由CSDN通过智能技术生成

我们平时在用一些软件的时候,(如QQ的密码框,WEB网页的密码框),他们都具有防止粘贴中能
在以前,我在防止这方面的工作,当文本框获得焦点时,给他处理剪贴板数据,让其清空。
以下这个代码可不时上面的方法哦,

模块MOD1中:

Option Explicit
'石陆软件屋
Public Declare Function CallWindowProc Lib "user32.dll" Alias "CallWindowProcA" _
                        (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

Public Declare Function SetWindowLong Lib "user32.dll" Alias "SetWindowLongA" _
                        (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Public Const GWL_WNDPROC As Long = -4
Public Const WM_PASTE As Long = &H302

Public g_hOldProc As Long

Public Function WndProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    If uMsg = WM_PASTE Then
        WndProc = 0
    Else
        WndProc = CallWindowProc(g_hOldProc, hwnd, uMsg, wParam, lParam)
    End If
 End Function


 

调用代码如下:

Private Sub Form_Load()
    g_hOldProc = SetWindowLong(Text1.hwnd, GWL_WNDPROC, AddressOf WndProc)
End Sub

Private Sub Form_Unload(Cancel As Integer)
    SetWindowLong Text1.hwnd, GWL_WNDPROC, g_hOldProc
 End Sub

摘自: (黑客代码网)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值