• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak zmienić background na image ?

Cloud VPS
0 głosów
515 wizyt
pytanie zadane 28 kwietnia 2023 w C# przez marcin20a Początkujący (280 p.)

Witam. Miałem taki kod do zmiany koloru panelu po kliknięciu:

private void button2_Click(object sender, EventArgs e)
        {
            {
                if (button2.Text == "WŁĄCZ")
                {
                    panel1.BackColor = Color.LimeGreen;
                    button2.Text = "WYŁĄCZ";
                    
                }

                else if (button2.Text == "WYŁĄCZ")
                {
                    panel1.BackColor = Color.Red;
                    button2.Text = "WŁĄCZ";
                }
            }
        }

Chciałem go tak zmodyfikować aby button się zmieniał (nie panel) na inny backgroundimage po kliknięciu, a następnie zmienił się z powrotem po drugim kliknięciu. Wykombinowałem tylko:               

private void button2_Click(object sender, EventArgs e)
        {
            {
                if (button2.Text == "WŁĄCZ")
                {
                    button2.BackgroundImage = Properties.Resources.myOff;
                    button2.Text = "WYŁĄCZ"
                }

                else if (button2.Text == "WYŁĄCZ")
                {
                    button2.BackgroundImage = Properties.Resources.myOn;
                    button2.Text = "WŁĄCZ";
                }
            }
        }

ale nie wiem co ma być w "if" i jak się pozbyć "button2.Text" żeby nie było napisów prócz obrazka?

Pewno jakaś drobnostka ale nie wiem :/

 

 

 

 

1 odpowiedź

+1 głos
odpowiedź 28 kwietnia 2023 przez VBService Ekspert (256,600 p.)
edycja 28 kwietnia 2023 przez VBService

Możesz użyć np. atrybutu Tag button-a, do przechowywania stanu przycisku

 

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            button1.Image = Properties.Resources.myOn;
            button1.Text = null;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (button1.Tag == null)
            {
                button1.Image = Properties.Resources.myOff;
                button1.Tag = "off";
            }
            else
            {
                button1.Image = Properties.Resources.myOn;
                button1.Tag = null;
            }
        }
    }

lub

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            button1.Image = Properties.Resources.myOn;
            button1.Text = null;
            button1.Tag = "on";
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if ((string)button1.Tag == "on")
            {
                button1.Image = Properties.Resources.myOff;
                button1.Tag = "off";
            }
            else
            {
                button1.Image = Properties.Resources.myOn;
                button1.Tag = "on";
            }
        }
    }

 

1
komentarz 4 maja 2023 przez marcin20a Początkujący (280 p.)
Bardzo dziękuje VBService! Tego szukałem !

Podobne pytania

0 głosów
1 odpowiedź 354 wizyt
pytanie zadane 2 marca 2017 w HTML i CSS przez Mateusz Bogumił Obywatel (1,380 p.)
0 głosów
2 odpowiedzi 250 wizyt
pytanie zadane 28 października 2016 w HTML i CSS przez Giovacho Użytkownik (960 p.)
0 głosów
2 odpowiedzi 236 wizyt
pytanie zadane 9 września 2015 w HTML i CSS przez w33 Nowicjusz (160 p.)

93,463 zapytań

142,459 odpowiedzi

322,728 komentarzy

62,842 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...