webForumDet fria alternativet

Hjälp att få en text till en label när jag selectar ett item i en listbox!

.NET

0 svar · 694 visningar · startad av Gramas19

Medlem sedan dec. 201250 inlägg
Frågan#1

Hej! Jag har suttit och gjort ett program där jag stött på olika problem som har varit krångliga att ta sig förbi men som jag även lyckats med, vilket jag är glad över! :) Men nu har jag kommit till ett problem och har suttit i ungefär 3 timmar med det och testat olika saker och jag tror det börjar närma sig det rätta men jag har ett litet problem. Jag vill selecta en sak i en listbox och det ska då visas hur stor procent den saken är i en label. till exempel om jag har laggt till några saker som så här:

1. Coins
2. Bones
3. Coins

Om jag selectar bones ska det stå i label ungefär så här: bones: 33%
om jag selectar coins ska det stå så här: Coins: 66%
Jag använde mig utav bool och det funkar men bara en gång.. alltså om jag selectar bones så står det 33% men om jag sedan trycker på coins så står det fortfarande 33%.. så det funkar bara en gång och det är mitt problem :/ här är koden:

 
bool pb2 = false;
        int answer;
        int procent;
        int procent1;
        bool pb3 = false; //detta är högst upp i min kod, inte i någon button eller liknande
//procent är för pictureBox1 så att man ska kunna räkna ut procent
//procent1 är för pictureBox 2 osv så man ska få procent från det.
//pb2 och pb3 är så att programmet ska veta om det är det item från pictureBox1 eller 2 som är valt.

 private void pictureBox1_Click(object sender, EventArgs e)
        {
            pb2 = true;
            procent = procent + 1;
            
            lTimer = new Timer();
            lTimer.Interval = 1000;
            lTimer.Tick += new EventHandler(timer1_Tick);
            lTimer.Start();

            total1 = total1 + 1;
            listBox1.Items.Add(total1 + "." + " " + "Green d'hide");
            answer = procent * 100 / total1;
            label3.Text = answer.ToString();

 private void pictureBox2_Click(object sender, EventArgs e)
        {
            procent1 = procent1 + 1;
            pb3 = true;
            total1 = total1 + 1;
            listBox1.Items.Add(total1 + "." + " " + "Brews + Restores");
            answer = procent1 * 100 / total1;
            label3.Text = answer.ToString();
        }

 private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (pb2 = true)
            {
                answer = procent * 100 / total1;
                label3.Text = answer.ToString();
            }
            else if (pb3 = true)
            {
                answer = procent1 * 100 / total1;
                label3.Text = answer.ToString();
            }
        }

tack på förhand!

258 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)