只是文本框的話:
成都網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、成都網(wǎng)站建設(shè)公司、微信開發(fā)、微信小程序開發(fā)、集團成都定制網(wǎng)站等服務(wù)項目。核心團隊均擁有互聯(lián)網(wǎng)行業(yè)多年經(jīng)驗,服務(wù)眾多知名企業(yè)客戶;涵蓋的客戶類型包括:成都PVC花箱等眾多領(lǐng)域,積累了大量豐富的經(jīng)驗,同時也獲得了客戶的一致贊賞!
Private Const charSet As String = "abcdefghijklmnopqrstuvwxyz"
Private Sub textbox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles textbox1.KeyPress
If charSet.IndexOf(e.KeyChar) = -1 And e.KeyChar "" Then
e.Handled = True
End If
End Sub
這樣只能輸入charset 規(guī)定的字符
使用VB.net編寫屏蔽熱鍵的方法有很多中,比如說使用系統(tǒng)的API函數(shù),也可以使用鉤子來進行屏蔽.還有一種就是.net帶的一種方法,首先來判斷所按下去的鍵,然后再執(zhí)行操作等事件.比如說:if (e.keycode==keys.D){e.handle=true}在keydown事件里面處理!這樣就可以屏蔽了D鍵. 實例:if ((Control.ModifierKeys == Keys.Alt) (e.KeyCode == Keys.F4))
{
e.Handled = true;
}還有一種辦法就是不通過屏蔽熱鍵來實現(xiàn),就是通過設(shè)置焦點.你可以把你程序窗口設(shè)置為主焦點,這樣其他程序一般就無法在你的程序前面了.實現(xiàn)屏蔽的作用.至于任務(wù)管理器的話可以通過殺掉進程的辦法做到.如下: Process[] p = Process.GetProcesses(); foreach (Process p1 in p)
{
try
{
if (p1.ProcessName.ToLower().Trim() == "taskmgr")//這里判斷是任務(wù)管理器
{
p1.Kill();
return;
}
}
catch
{
return;
}
}}以上是使用C#編寫的,稍微改下就可以了,在,NET里面都差不多!
CnPack組件包中有KeyBlocker組件,可以鍵盤hook的方式屏蔽一些鍵,但對CTRL+ALT+DEL無效。
例子在cnpack\Examples\KeyBlocker中。