delphi4arab منتديات دلفي للعرب

نسخة كاملة : edit text
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله

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

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

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

لقبض الزر المضغوط بالحدث 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;

و بالتوفيق
شكرا علي سرعة الرد وبارك الله فيك أخي
السلام عليكم
طريقة أخرى...
اضبط 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.