none
Cesta k souboru trochu jinak

    Dotaz

  • Ahoj,

    jsem začátečník a potřebuju vytvořit jednoduchý prográmek, který bude umět načítat obrázky:

    Potřeboval bych kombinací několika radioButtons načítat PNG obrázky. Potíž je, že obrázků je několik set a abych je nemusel volat jednotlivě, jako např. takhle

    private void radioButton1_CheckedChanged(object sender, EventArgs e)

            {

                z = 1;

            }

    private void radioButton2_CheckedChanged(object sender, EventArgs e)

            {

                z = 2;

            }

    private void radioButton3_CheckedChanged(object sender, EventArgs e)

            {

                z = 3;

            }

    private void pictureBox1_Click(object sender, EventArgs e)

            {

                if (z == 1)

                    pictureBox1.Load(@"C:\Data\Image\1111.png");

                if (z == 2)

                    pictureBox1.Load(@"C:\Data\Image\1112.png");

                if (z == 3)

                    pictureBox1.Load(@"C:\Data\Image\1113.png");

            }

    chtěl bych je volat nějakým "kódem", jelikož jsou pojmenovýny logickou řadou ve formátu wxyz(1111,1112,1113,1121,1122,1123 atd). Takže bych se je chtěl vytvořit něco jako:

    pictureBox1.Load(@"C:\Data\Image\wxyz.png");

    A načítat sadou radioButton1,2,3 za w 1,2 nebo 3 na první místo, sadou radioButton4,5,6 za x 1,2 nebo 3 na druhé místo, sadou radioButton7,8,9 za y 1,2 nebo 3 na třetí místo a sadou radioButton10,11,12 za z 1,2 nebo 3 na čtvrté místo.

    Lze to nějak? Poraďte mi, prosím.

    • Upravený monkmank 29. října 2012 15:40
    29. října 2012 15:31

Všechny reakce

  • Trochu jsem mezitím pokročil ve svých dovednostech, teď to mám napsaný takto:

     public Form1()
            {
                InitializeComponent();
            }
    
            int x;
    
            private void radioButton1_CheckedChanged(object sender, EventArgs e)
            {
                x = 1;
            }
    
            private void radioButton2_CheckedChanged(object sender, EventArgs e)
            {
                x = 2;
            }
            
            private void pictureBox2_Click(object sender, EventArgs e)
            {
                if (x == 1)
                    pictureBox2.Image = Properties.Resources._1111;
                if (x == 2)
                    pictureBox2.Image = Properties.Resources._1112;
    Jde nějak udělat něco jako: Properties.Resources._111x; ???
    1. listopadu 2012 16:38