jak na indexy
-
9. listopadu 2012 13:30
Dobrý den všem
jsem začátečník a potřeboval bych pomoc.
Mám program který postupně schovává tlačítka a odkrývá tím pozadí (obrázek).
V jednom okamžiku potřebuji znovu zviditelnit všechna neviditelná tlačítka.
Zkusil jsem toto, ale hlásí, že button neexistuje:
private void but_obnova_Click(object sender, EventArgs e)
{
for (int i = 0; i <= 40; i++)
(button[i]).Visible = true;
}Děkuji za případnou pomoc.
Všechny reakce
-
9. listopadu 2012 14:29
Dobrý den,
a jak máš definovaná tlačítka? Pokud nejsou v poli nemůžeš se na ně jako na pole obracet.
Zkus tedy něco takovéhoto (musíš si to upravit podle názvu proměnných (tlačítek) v tvém programu:
private void but_obnova_Click(object sender, EventArgs e) { button1.Visible = true; button2.Visible = true; button3.Visible = true; button4.Visible = true; button5.Visible = true; button6.Visible = true; button7.Visible = true; button8.Visible = true; button9.Visible = true; button10.Visible = true; button11.Visible = true; button12.Visible = true; button13.Visible = true; button14.Visible = true; button15.Visible = true; button16.Visible = true; button17.Visible = true; button18.Visible = true; button19.Visible = true; button20.Visible = true; button21.Visible = true; button22.Visible = true; button23.Visible = true; button24.Visible = true; button25.Visible = true; button26.Visible = true; button27.Visible = true; button28.Visible = true; button29.Visible = true; button30.Visible = true; button31.Visible = true; button32.Visible = true; button33.Visible = true; button34.Visible = true; button35.Visible = true; button36.Visible = true; button37.Visible = true; button38.Visible = true; button39.Visible = true; button40.Visible = true; }
JCH
- Upravený ing. Jan Chaloupek 9. listopadu 2012 14:30
-
10. listopadu 2012 16:05
Tohle jsem chtěl právě obejít tím cyklem.
Zkusím to nějak tím polem tlačítek.
Díky za radu.
-
11. prosince 2012 13:26
Následující kód vytvoří matici 5 x 5 tlačítek, všechna se skryjí voláním metod odkryjLINQ nebo odkryjForEach
using System; using System.Collections.Generic; using System.Windows.Forms; namespace WindowsFormsApplication3 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } List<Button> tlacitka = new List<Button>(); private void Form1_Load(object sender, EventArgs e) { for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { Button tl = new Button(); tl.Left = i * 50; tl.Top = j * 50; tl.Width = tl.Height = 50; tl.Text = (j * 5 + i + 1).ToString(); tlacitka.Add(tl); Controls.Add(tl); } } } void odkryjLINQ() { tlacitka.ForEach(tl => tl.Visible = false); } void odkryjForEach() { foreach (Button tl in tlacitka) { tl.Visible = false; } } } }
-
11. prosince 2012 13:48
Ahoj,
tvůj kod funguje ale tazatel psal že je začátečník. Nemyslím že bude tlačítka vkládat jinak než přes GUI. Pokud ano, tak to takto nemá šanci zařídit.
.
Jinak hezká práce.
JCH