[ Igor Kovačević @ 04.08.2003. 18:43 ] @
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]
[ silverglider @ 05.08.2003. 00:51 ] @
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.
[ Ilija Studen @ 05.08.2003. 14:55 ] @
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;


[ Igor Kovačević @ 16.08.2003. 15:17 ] @
e hvala vam puno...