Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

kako da detektujem fokus tastature i/ili miša...

  • 3 odgovora
  • 4.209 pregleda

Najnovija ↓

kako da detektujem fokus tastature i/ili miša... 04.08.2003. u 19:43 · pre 282 meseca #1
zanima me sljedeće :
imam:edit1;
edit2;
button1;

znam kako da button na klik ispiše određeni tekst ali kako da taj tekst ispiše u određeno polje(edit1 ili edit2) ovisno o tome u kojem polju je kursor miša (aktivno polje) probao sam ovo ali ne ide ; ne znam zašto...

>>> if Edit1.Focused then Edit1.Text:='Određeni text';
else Edit2.Text:='Određeni text'; <<<

pozdrav



[Ovu poruku je menjao -zombie- dana 05.08.2003. u 04:43 GMT]
Potpis
In nature, nothing is ever right. Therefore, if everything is going right ... something is wrong.
Re: delphi problem 05.08.2003. u 01:51 · pre 282 meseca #2
Cekaj, nisi sad ti precizan - da li hoces ispis u onom TEditu u kojem je kursor (za kucanje) ili kako ti kazes "kursor misa", tj. strelica?
Za ovo prvo jeste property focused, koje je postavljeno na true ukoliko si na to polje kliknuo ili do njega dosao sa tab tasterom.
Za ovo drugo mozes da uradis istu logiku kao za "mouse over" event; u trenutku ispisa, pogledas koordinate misa i ako je mis u okviru jednog TEdita (pocetne top i left, kao i width i height imas), onda ispisi u njemu.
Re: kako da detektujem fokus tastature i/ili miša... 05.08.2003. u 15:55 · pre 282 meseca #3
Problem nastaje kada kliknes. Tada se fokus prebacuje na button!

Mozes ovako: imas jednu globalnu promenljivu (var Unita ili var Forme kako hoces, na oba ce nacina raditi) Edit tipa TEdit.

OnEnter svakog Edita stavi da menja njegovu vrednost. Evo primera za OnEnter. Oba edita ga dele (tj. ne moraju biti dva odvojena metoda):

Code:

procedure TForm1.Edit1Enter(Sender: TObject);
begin
  if Sender is TEdit then
    Edit := (Sender as TEdit);
end;


A evo ti i za OnClick button-a:

Code:

procedure TForm1.Button1Click(Sender: TObject);
begin
  if Edit <> nil then
    Edit.Text := 'neki tekst!';
end;


Potpis
http://www.activecollab.com - Alat za upravljanje projektima
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme