OnKeyPress

Delphidə Form1-də PageControl1, PageControl1-in TTabSheet4-ində isə Edit1 və ListBox1 var.
Sual: Edit1 xanasına müyyən bir sətir yazıb, Enteri (#13) basdıqda ListBox1.Items.Add(Edit1.Text) etmək istəyirəm. Yığdığım kod aşağıdakı kimidir:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
ListBox1.Items.Add(Edit1.Text);
Edit1.Text:=”;
Edit1.SetFocus;
end;
end;

Kodda səhv yoxdur, ancaq bir əmma var. Sətri yığıb, Enteri basdıqda Form1 bağlanır. Niyə?!
Axı sətir siyahıya əlavə olunub, fokus almalıdır. Niyə Form1.Close?! Səbəbini bilən varmı?! Alternativ məsləhət verə də bilərsiniz…


Kateqoriya: Proqramlaşdırma . , , , , . Qısa keçid.

Verilmiş cavablar və yazılan şərhlər (4 cavab var)

Siz olabisin ki, Form1-in keypreview xüsusiyyətini Object İnspectordan true eləmisiniz və programınızda bu şəkildə kodlama hissəsi var:

procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
/..başqa kodlar
close;
end;

Bunun nəticəsində formda hərhansı bir yerdə basılan düymə ilk olaraq Form1 tərəfindən analiz olunur,beləliklə form bağlanır.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(21:36, 17/01/2011 ) #1315

Xeyr, o şəkildə kod proqramın heç bir yerində yoxdur, rahat olun. Close ilə bağlı yalnız bir prosedur var, o da “Çıxış” düyməsinin basılmasına reaksiya göstərir:

procedure TForm1.CixishClick(Sender: TObject)
begin
Form1.Close
end;

Maraqlıdır ki, bu fraqmenti sildikdə ümumiyyətlə, Enter düyməsinə reaksiya vermir proqram… Nə etməli?!

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(14:14, 19/04/2011 ) #2312

Sualı indi gördüm. Kodu olduğu kimi yoxladım, məndə heçbir problem çıxmadı. Proqramınızı tam olaraq mənə göndərsəniz incələyə bilərəm. ([email protected]) Və yeri gəlmişkən qeyd edim ki, belə hallarda onKeyPress yox onKeyDown olayına müraciət etməyiniz daha məqsədə uyğun olardı. Eyni kodları Edit-in onKeyDown olayında yazın, işləməlidir.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

(14:20, 19/04/2011 ) #2313

Problem editdə və list boxda deyil,

Siz o formda button qoymusuz və on button clickdə Close; əmri vermisiz, və bu düyməni default olaraq bu form üzərində hər hansı bir yerdə “Enter” sıxıldıqda bu düyməyə mürəciyyət olunmasını istəmizi, buna görədə siz editin daxilində enter sıxqıda form bağlanır.

Cavablamaq üçün sağ sütundan hesaba daxil olmaq lazımdır

Bu suala aid öz sualım var:
Sual verin
Bu suala cavab vermək istəyirəm:
Cavab verin

Cavab verin


Cavab yazmaq üçün lütfən sağ sütundan və ya buradan hesaba daxil olun.

Üzvlər üçün giriş

Qeydiyyat

Elan qutusu

Son cavablar və şərhlər

Cavablar AI cavab verdi - səsli kitab saytında müəllif hüquqları (34 gün əvvəl)

E. Hacı cavab verdi - səsli kitab saytında müəllif hüquqları (34 gün əvvəl)

evonline.az cavab verdi - Mahni axtariram, azerbaycanin klipi idi. (39 gün əvvəl)

Cənab cavab verdi - Abune kodu - qaz (52 gün əvvəl)

nihatt cavab verdi - Aztelekomun Huawei GPON modeminin login və şifrəsi (69 gün əvvəl)

Mesud cavab verdi - C++ aid məsələ (85 gün əvvəl)

Toofiq cavab verdi - Abune kodu - qaz (86 gün əvvəl)

Toofiq cavab verdi - Mahni axtariram, azerbaycanin klipi idi. (86 gün əvvəl)

selef cavab verdi - gömrük bağlamanı saxladı (105 gün əvvəl)

walkingdead4 cavab verdi - Niqodnilik haqqında yardım ederdiz (120 gün əvvəl)

Devequsu cavab verdi - Niqodnilik haqqında yardım ederdiz (122 gün əvvəl)

E. Hacı cavab verdi - Manual QA vs Wordpress (137 gün əvvəl)

SN cavab verdi - .az domaini whois serveri niyə işləmir? (181 gün əvvəl)

byshako cavab verdi - .az domaini whois serveri niyə işləmir? (182 gün əvvəl)

byshako cavab verdi - .az domaini whois serveri niyə işləmir? (182 gün əvvəl)

Software Developer - 616 xal

E. Hacı - 610 xal

Onar Alili - 526 xal

Dilsuz - 448 xal

Cabbarov Sübhan - 434 xal

Maqa - 346 xal

Ruslan Butdayev - 328 xal

Namiq Bəndəli - 297 xal

U.Tarlan - 244 xal

Meherremoff - 234 xal

Sistemə daxil olmuş 23348 sualdan 92%-dən çoxu cavablandırılmışdır.

Proyekt haqqında

E-Haci.net istehsalı. © 2010-2026