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

promjena fokusa kontrole

[es] :: C programiranje :: promjena fokusa kontrole

[ Pregleda: 939 | Odgovora: 3 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mladenvasic
Mladen Vasic
Doboj

Član broj: 50512
Poruke: 124
81.93.74.*



Profil

icon promjena fokusa kontrole18.03.2005. u 09:01

imam 3 editbox-a i jedno dugme. kako na pritisak dugmeta da se kursor fokusira ne sledeci editbox. npr. ako je fokusiran prvi editbox, na pritisak dugmeta da fokusira drugi, pa opet na pritisak dugmeta da fokusira treci i tako u krug. nadam se da ste razumjeli.
hvala unapred....
18.03.2005. u 09:01 

Relja A.
Relja Arandjelovic
Beograd

Član broj: 5702
Poruke: 20
*.beotel.net.

ICQ: 86460709


Profil

icon Re: promjena fokusa kontrole15.07.2005. u 11:22
Jel' koristiš C++ Builder ili Visual Studio?
Znam to da ti uradim u Builder-u, ali mi prvo odgovori da ne bih bez veze pisao ako koristiš Visual Studio ili ako si pronašao odgovor...

Relja
15.07.2005. u 11:22 

Relja A.
Relja Arandjelovic
Beograd

Član broj: 5702
Poruke: 20
*.beotel.net.

ICQ: 86460709


Profil

icon Re: promjena fokusa kontrole15.07.2005. u 16:43
Ok, evo kako to da uradiš u C++ Builer-u (ali je moguće da ti može pomoći i u slučaju Visual Studio-a):

Neka se TEdit-i zovu Edit1,2,3.
Deklariši celobrojnu promenljivu foc, koja će na početku biti 1 (koj Edit je trenutno fokusiran).

Klik na dugme treba da odradi:
Code:

foc++;
if (foc>3) foc=1;

((TEdit*)FindComponent("Edit"+IntToStr( foc )))->SetFocus();


Mislim da su prve dve linije jasne (računaju koj Edit treba da bude u fokusu).
Treća linija:
FindComponent(Ime), vraća komponentu sa datim imenom, a ovo ispred (TEdit*) mu stavlja do znanja da se radi o TEdit-u (bez zagrade bi se bunio da ne postoji funkcija SetFocus u objektu TComponent).
Dobro, isto ovo se može uraditi i prostije - bez FindComponent-a, samo sa 3 if-a. Ali to bi bilo malo teže uraditi ako ti treba 100 Edit-a..

Ovo se ne može uraditi bez (kakve takve) pomoćne promenljive. Na primer, ako bi probao ovo, ne bi uspelo:
Code:

if (Edit1->Focused()) Edit2->SetFocus();

Ne uspeva jer se klikom na dugme menja fokus na dugme, pa Edit1->Focused() vraća false.

Relja
15.07.2005. u 16:43 

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 2677
*.nat-pool.po.sbb.co.yu.

Jabber: xfiles@elitesecurity.org
Sajt: www.antivari.com


Profil

icon Re: promjena fokusa kontrole16.07.2005. u 08:14
Ne znam kako, ali ovo je već jednom bilo aktuelno:

http://www.elitesecurity.org/tema/103642/0#670966

FREEWARE
Di rečnik, v1.0.058 (srp-eng/eng-srp priručni rečnik)
http://www.antivari.com
16.07.2005. u 08:14 

[es] :: C programiranje :: promjena fokusa kontrole

[ Pregleda: 939 | Odgovora: 3 ]

Postavi temu Odgovori

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