如何屏蔽键盘的数字和字母键?(200分)

  • 主题发起人 主题发起人 mazheng
  • 开始时间 开始时间
M

mazheng

Unregistered / Unconfirmed
GUEST, unregistred user!
如何屏蔽键盘的数字和字母键?
 
procedure TForm1.Edit1KeyPress(Sender: TObject;
var Key: Char);
var la:set of char;
begin
la:=['a'..'z','0'..'9'];
if key in la then
key:=' ';
end;
 
搞一个键盘钩子,什么都搞定啦,
如果只是在自己的窗体中就不要用这等牛刀啦,
呵呵~~~~~~~~~~~
 
最好用键盘钩子
 
盗版了一段代码
var
tmp:integer;
begin
tmp := 0;
//屏蔽 Alt-Tab 查看其它,可以看到很多信息;
SystemParametersInfo( SPI_SETFASTTASKSWITCH, 1, @tmp, 0);
//屏蔽 Ctrl-Alt-Del
SystemParametersInfo( SPI_SCREENSAVERRUNNING, 1, @tmp, 0);
end;

Or
procedure Tmainform.Lockkey(lock: boolean);
begin
if lock = true then
begin
asm //封锁20端口 锁定键盘 98&95
IN AL,21H
OR AL,02H
OUT 21H,AL
end;
end
else
begin
asm //解锁20端口 解锁键盘
IN AL,21H
AND AL,0FDH
OUT 21H,AL
end;
end;
end;

 
另外,参考一下高手的
http://www.delphibbs.com/delphibbs/dispq.asp?lid=541581
 
就用第一位朋友的方法,利用事件,
每当按键时检查按下的键,只是需
要将赋值语句改为key:=#0;表示空
字符。
我的一个程序就需要类似的功能,
要求输入框只可输入数字,其他按
键屏蔽。源代码要吗?
不要求你送分,交个朋友吧?
我的QQ:71892967,欢迎各位朋友
与我交流,指教!!
 
上面说得KEY:=#0这个办法就可以了。
不用做得那么麻烦吧。
 
用我那方法就可以,你还不结帐?
 
比较简单的,,,,有时问题就会向复杂方面想
 
外挂式输入法初步实现 http://www.2ccc.com/article.asp?articleid=942
 
后退
顶部