07-03-2011, 10:10 PM
استخدم الوسم code لتبدو الأكواد أوضح
مثال بطريقة أخرى من خلال قراءة محتوى Clipboard
المثال لـ Thomas Stutz بتصرف
ينقصه منع Shift+Insert وأمثالها وبعض الفحوصات...
مثال بطريقة أخرى من خلال قراءة محتوى Clipboard
PHP كود :
uses
ClipBrd;
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var
Mgs: TMsg;
procedure EatKey;
{ Clear Keyboardbuffer}
begin
PeekMessage(Mgs, 0, WM_CHAR, WM_CHAR, PM_REMOVE);
end;
begin
{ Check if control pressed }
if (ssCtrl in Shift) then
case key of
{ Ctrl + v }
86:
begin
{ determine if the Clipboard contains a string type }
if Clipboard.HasFormat(CF_TEXT) then
{ Check if text consists of numbers }
try
StrToInt(Clipboard.AsText);
except
{ If no then don't insert text }
EatKey
end;
end;
{ Ctrl + c }
67: { do nothing }
else
EatKey;
end
{ else check for allowed characters such as BackSpace, RETURN...}
else if not (Key in [8, 13, 110, 96..105]) then EatKey;
end;
ينقصه منع Shift+Insert وأمثالها وبعض الفحوصات...

