Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > Нажатие кнопки


Автор: PashaSem 28.8.2006, 18:18
Всем привет!
Подскажите как решить вопрос.

Есть две кнопки на форме когда нажимаешь на одну меняется цвет другой при отпускании цвет возращается в исходный.

Чтоб событие реализовать  не кликом а нажатием и отжатием кнопки мышки.

Знаю что достаточно изменить какое-то свойство но не могу вспомнить какое!!!!!   


Помогите востановить память :-)))))

Спасибо!

Автор: marcusmae 28.8.2006, 18:42
button1.MouseUp или button1.MouseDown?

Добавлено @ 18:47 
Код

        private void button1_MouseDown(object sender, MouseEventArgs e)
        {
            this.button2.BackColor = SystemColors.Info; 
        }

        private void button1_MouseUp(object sender, MouseEventArgs e)
        {
            // если закраска определялась визуальным стилем (тогда она градиентная) :
            this.button2.UseVisualStyleBackColor = true; 
            // иначе просто this.button2.BackColor = SystemColors.ControlLight;

            // может понадобиться this.button2.Refresh();
        }

Автор: ivashkanet 29.8.2006, 08:53
PashaSem, такие свойства действительно есть, но вот заставить их работать я не смог smile
Наверное мешали стили Винды smile
Код

button1.FlatAppearance.MouseDownBackColor = System.Drawing.Color.Red;
button1.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Lime;

Автор: $tatic 1.9.2006, 15:46
У кнопок надо изменить свойство FlatStyle (По умолчанию стоит System, т.е. рисуется с использованием стилей, если они активированы приложением)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)