Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa MsgBox-om i OnKeyPress

[es] :: Pascal / Delphi / Kylix :: Problem sa MsgBox-om i OnKeyPress

[ Pregleda: 1453 | Odgovora: 6 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

_v!rus_
BGD

Član broj: 40451
Poruke: 313
*.vdial.verat.net.



Profil

icon Problem sa MsgBox-om i OnKeyPress20.02.2005. u 19:34

Imam sledeci problem:

Code:

proc Kontrola.KeyDown
begin
  if Key = VK_RETURN then
  begin
    ...
    ...
    if MessageDlg('Da li zelite opet?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
      ...
  end;
end;


Problem je sto ako se stisne Enter na MsgBox-u, ponovo se poziva Kontrola.OnKeyDown i posto je pritisnut enter prolazi [if Key = VK_RETURN] proveru (naravno nece ako se klikne misem dugmad u MsgBox-u)...
Probao sam i sa App.PcsMsgs posle MsgBox poziva ali ne radi...
Ima li neki nacin da ocistim bafer tastature posto ocigledno MsgBox prosledjuje poruku o pritisnutom tasteru, a ne guta poruku?
20.02.2005. u 19:34 

neor
Nenad Orlovic

Član broj: 26828
Poruke: 74
*.metrohive.net.



Profil

icon Re: Problem sa MsgBox-om i OnKeyPress20.02.2005. u 19:46
Na primer:

Code:

var MozeDalje:Boolean;

proc Kontrola.KeyDown
begin
  if (Key = VK_RETURN) and MozeDalje then
  begin
    ...
    ...
    MozeDalje := False;
    if MessageDlg('Da li zelite opet?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
      ...
    MozeDalje := True;
  end;
end;

20.02.2005. u 19:46 

_v!rus_
BGD

Član broj: 40451
Poruke: 313
*.vdial.verat.net.



Profil

icon Re: Problem sa MsgBox-om i OnKeyPress20.02.2005. u 20:01
Ne razumes, tako nece ni doci do msgbox-a prilikom pritiskanja entera, nema nacina da odredim da li je enter stisnut u kontroli ili u msgbox-u.
20.02.2005. u 20:01 

engineer

Član broj: 45205
Poruke: 109
*.metrohive.neobee.net.



Profil

icon Re: Problem sa MsgBox-om i OnKeyPress20.02.2005. u 20:21
Citat:
_v!rus_: Imam sledeci problem:
Code:

proc Kontrola.KeyDown
begin
  if Key = VK_RETURN then
  begin
    ...
    ...
    if MessageDlg('Da li zelite opet?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
      ...
  end;
end;
Erm, kod mene to radi OK...
20.02.2005. u 20:21 

_v!rus_
BGD

Član broj: 40451
Poruke: 313
*.vdial.verat.net.



Profil

icon Re: Problem sa MsgBox-om i OnKeyPress20.02.2005. u 22:12
Jao!
Ovde sam napisao Kontrola.OnKeyDown, a u mom kodu gde je problem stoji Kontrola.OnKeyUp... idiot...

Sada radi, hvala!

...samo teorijski...problem i dalje stoji...
Code:

procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_RETURN then
    MessageDlg('Da li zelite opet', mtInformation, [mbYes, mbNo], 0);
end;



20.02.2005. u 22:12 

Rapaic Rajko
programer, Grappolo
Bgd

Član broj: 4105
Poruke: 413
217.119.242.*



Profil

icon Re: Problem sa MsgBox-om i OnKeyPress23.02.2005. u 08:39
Code:

procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
var aevent: TKeyEvent;
begin
  if Key = VK_RETURN then begin
    aevent := Edit1.OnKeyUp;
    Edit1.OnKeyUp := nil;
    MessageDlg('Da li zelite opet', mtInformation, [mbYes, mbNo], 0);
    Edit1.OnKeyUp := aevent;
end;


Ovo bi trebalo da odradi. Samo, moram da kazem da je ipak neubicajeno da se dijalozi ispucavaju na ovakvim mestima...

Rajko
23.02.2005. u 08:39 

_v!rus_
BGD

Član broj: 40451
Poruke: 313
*.vdial.verat.net.



Profil

icon Re: Problem sa MsgBox-om i OnKeyPress23.02.2005. u 13:03
Zasto neobicno?
To je bio samo deo veceg koda koji radi pretragu, samo sam izolovao problem radi lakse ilustracije. Kada dodje do kraja pretrage program pita da li korisnik zeli da pretrazuje opet od pocetka...
23.02.2005. u 13:03 

[es] :: Pascal / Delphi / Kylix :: Problem sa MsgBox-om i OnKeyPress

[ Pregleda: 1453 | Odgovora: 6 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.