Autor | Zpráva | ||
---|---|---|---|
Aberon Profil |
#1 · Zasláno: 5. 3. 2009, 00:28:36
Ahoj,
Vim ze je tenhle prispevek trochu mimo tema, ale tenhle web mi vytanul na mysli prvni :-). Jde o jazyk Delphi, tudiz ti co ho neznaji ani nemuseji cist dal. Takze, presneji jde o komponentu RadioGroup. Mam v ni nadefinovany tri odrazky, pricemz vzdy mohu vybrat pouze jednu z nich. Jak ale udelat, aby byla jedna z nich Enabled:=false? Myslim ted pouze jednu odrazku, ne cely RadioGroup? Enabled=false znamena ze se to neda zmacknout, zesedivy to a nejde s tim hnout :), az do chvile kdy je Enabled=true. Snad jsem to vysvetlil srozumitelne, pomerne dlouho jsem to na netu hledal, ale bez vysledku. Diky za kazdy rozumny prispevek. |
||
SwimX Profil |
#2 · Zasláno: 5. 3. 2009, 00:39:50
Aberon
Vybereš konkrétní RadioButton a nastavíš mu hodnotu Enabled na false. Buď myší ve fomruláři nebo někde v programu jako RadioButton1.Enabled := false; |
||
Aberon Profil |
#3 · Zasláno: 5. 3. 2009, 00:43:44
Oh, diky za bleskovou odpoved.
Problem - Jak mam ale najet na konkretni RadioButton? Zkousel sis to? Je rozdil kdyz mas odrazky v RadioGroup a kdyz je mas mimo. Nevim jak mam pristoupit k ty KONKRETNI odrazce. Mysi rozhodne ne. |
||
SwimX Profil |
#4 · Zasláno: 5. 3. 2009, 00:46:13 · Upravil/a: SwimX
Aberon
Už je to dávno co sem dělal s Delphi. Ale RButtony sem cpal do GroupBoxu. Musí být v RadioBoxu? :) edit: |
||
Aberon Profil |
#5 · Zasláno: 5. 3. 2009, 00:52:49
Do GroupBoxu, vazne? Hele tam se ale cpou jen Edity a Labely... RadioButton tam nema co delat, od ceho je zavedeny pole pro RadioButtony :d.
Ano musí (pro muj pripad) to být v RadioBoxu. Prece musi existovat cesta jak pristoupit k danymu prvku (odrazce), nerikej ze ne. |
||
Aberon Profil |
#6 · Zasláno: 5. 3. 2009, 01:04:13
jj dynamicky v zavislosti na promeny. Takze ty rikas ze RadioGroup ano ci ne? :)
|
||
SwimX Profil |
#7 · Zasláno: 5. 3. 2009, 01:07:41
Aberon
Já sem ted zjistil co a k čemu je RGroup. V něm fyzicky neexistují jednotlivé RadioButtony, má jenom Items a ty jsou Tstringy takže si myslím, že Enabled možnost mít nebudou. Na druhou stranu chovají se jako radia takže by enabled možnost mít měli, ale já nevím kde. Když vezmeš rádia a dáš je do GroupBpoxu tak to pojede. Dá se k nim totiž dál normálně přistupovat. Ale asi to není správné :) To sem zase jednou nepomoh :)) |
||
Aberon Profil |
#8 · Zasláno: 5. 3. 2009, 01:11:50
Hele, ale to je zajimavy. Zkusim to, jak si to popsal a zachvili vyhodim vysledek :D. Mimojine, Diky.
|
||
SwimX Profil |
#9 · Zasláno: 5. 3. 2009, 01:12:12
Aberon
Ááá mám to :))) Tak teď mám opravdu radost a spokojeně usnu. Přistupuje se k nim pomocí pole Controls - je indexováno od nuly RadioGroup2.Controls[1].Enabled := false; |
||
Aberon Profil |
#10 · Zasláno: 5. 3. 2009, 01:14:51
Teda, Diky Moc. RadioButtony v GroupBoxu :). Docela vochcavacka, ale funguje to - a to je hlavni. Diky
|
||
Aberon Profil |
#11 · Zasláno: 5. 3. 2009, 01:15:34
„Aberon“
„Ááá mám to :)))“ „Tak teď mám opravdu radost a spokojeně usnu.“ „Přistupuje se k nim pomocí pole Controls - je indexováno od nuly“ „RadioGroup2.Controls[1].Enabled := false;“ Dokonce, jeste jednou diky - tohle vypada elegantneji :D |
||
SwimX Profil |
#12 · Zasláno: 5. 3. 2009, 01:16:12
Aberon
„tohle vypada elegantneji :D“ Jn, asi je to tak i myšlený :) ale proč to takle schovali to teda nevím.. |
||
joe Profil |
#13 · Zasláno: 5. 3. 2009, 07:49:53 · Upravil/a: joe
Nevím jak je to v Delphi, ale znám VB, který je hodně podobný. Tenhle způsob se mi nezdá příliš šikovný a to z toho důvodu, že se někdy rozhodneš přidat další Radio, tak budeš muset přepočítávat v kódu indexy? To snad nemůžeš přistupovat k jednotlivým komponentám podle jména?
RadioButton.enabled := false A nebo alespoň podle nějakých klíčů, pokud se to tam vytváří dynamicky. Tím chci říct, že daleko lepší je přidat si na formulář jednotlivé Radio Buttony a ty pak dát do nějakého kontejneru, který by tvořil jejich skupinu, než to takhle blbě psát. |
||
SwimX Profil |
#14 · Zasláno: 5. 3. 2009, 11:22:00
joe
„Tím chci říct, že daleko lepší je přidat si na formulář jednotlivé Radio Buttony a ty pak dát do nějakého kontejneru, který by tvořil jejich skupinu, než to takhle blbě psát.“ Tak to je přesně řešení -> dávat Buttony do GroupBoxu, jak jsem to vždycky dělal. Jak ale tvrdí Aberon (a asi má právdu), proč jinak by vznikl RadioGr „o snad nemůžeš přistupovat k jednotlivým komponentám podle jména? RadioButton.enabled := false“ Takle to opravdu nejde. Nevím proč. Aberon joe mě však navedl na zajímavou myšlenku. V Items jsou totiž jejich názvy, takže se k nim přes ně dá dostat. for i := 0 to radioGroup1.Items.Count-1 do begin if radioGroup1.Items[i] = "hledaný popisek RButtonu" then begin index := i; break; end; end; RadioGroup1.Controls[index].Enabled := false; hodilo by se to dát do funkce s parametrem CAPTION která by vrace index. |
||
Časová prodleva: 15 let
|
0