delphi4arab منتديات دلفي للعرب
edit text - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : edit text (/showthread.php?tid=2207)



edit text - abedroof2001 - 19-07-2010

السلام عليكم ورحمة الله

عندي أستفسار حول edit كيف يمكنني من تنفيد أمر عند الضغظ علي الزر enter
بمعنا بدلأ من أن أكتب الأمر في زر أدع المستخدم يكتب تم يضغط enter فيتنفد الأمر

وبنفس الطريقة عندما يضغط أنتر ينتقل edit2 والغرض من هذا هو تسهيل علي المستخدم الأنتقال من edit ألي أخر ويقلل من الأزرار داخل الفورم

والسلام عليكم


edit text - Lam.Abdeldjalil - 19-07-2010

و عليكم السلام عليكم و رحمة الله

لقبض الزر المضغوط بالحدث Edit1KeyPress
الزر enter هو VK_RETURN

كود :
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if (Key = Char(VK_RETURN)) then begin // أكتب التعليمات end; end;

للإنتقال إلى edit2

كود :
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if (Key = Char(VK_RETURN)) then Edit2.SetFocus ; end;

و هذا كود آخر مع إضافة نزع الرنين ( الصوت )

كود :
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin if (Key = #13) then begin key := #0; // لنزع الطنين الصوت edit2.SetFocus ; end; end;

و بالتوفيق


edit text - abedroof2001 - 19-07-2010

شكرا علي سرعة الرد وبارك الله فيك أخي


edit text - kachwahed - 19-07-2010

السلام عليكم
طريقة أخرى...
اضبط KeyPreview للـ TForm على True، ثم في OnKeyDown أكتب:
PHP كود :
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  
Shift: TShiftState);
begin
  
if Key = VK_RETURN then
    SelectNext
(ActiveControl, True, True);
end; 
مفيدة حالة وجود الكثير من الـ Controls.