Как поменять button в visual studio
Уроки программирования, алгоритмы, статьи, исходники, примеры программ и полезные советы
Как поменять цвет фона элементов в Windows Forms
В данной статье мы разберем несколько вариантов изменения цвета элементов Windows Forms на примере фона формы Form1 и прочих компонентов.
Способ №1. Изменение цвета в свойствах элемента.
Для многих это самый легкий способ изменения цветовой палитры элементов, так как не надо писать код, всё визуализировано и интуитивно понятно.
Здесь имеется большое количество цветовых схем и их визуальных представлений.
Выберем для примера какой-либо из цветов, чтобы изменить фон формы:
Легко, незамысловато, понятно.
Следующие способы будут производиться в коде.
Способ №2. Изменение цвета, используя структуру Color.
Это самый простой способ среди кодовых вариаций.
Если мы захотим закрасить фон формы в зеленый цвет, то строка кода будет выглядеть вот так:
При запуске форма будет выглядеть так:
Если понадобится изменить цвет, например, кнопки Button на тёмно-бордовый, код будет таким:
Данный способ прост тем, что требуется лишь написать название цвета, которых также большое количество.
Зачастую этих двух способов хватает для оформления программы. Если же нужна более гибкая настройка или же среди стандартных цветов не имеется необходимых, можно воспользоваться способами, описанными ниже.
Способ №3. Изменение цвета, используя метод Color.Argb.
Этот и следующий методы позволят генерировать нужный цвет, используя значения цветового канала RGB.
Данный способ позволяет регулировать интенсивность трех этих цветов, при смешивании которых и получится нужный нам оттенок.
Словесно это выглядит вот так:
Названиеэлементаформы.BackColor = Color.FromArgb(Насыщенность красного, Насыщенность зеленого, Насыщенность синего);
Чтобы закрасить фон программы в чёрный цвет, используя данный метод, надо написать вот такую строку:
В форме существует только один элемент управления PictureBox. Когда он был добавлен, интегрированная среда разработки автоматически присвоила ему имя pictureBox1. Существует только один элемент управления CheckBox с именем checkBox1. Скоро вы напишите код, которым будете обращаться к элементам управления CheckBox и PictureBox. Так как существует только по одному их экземпляру, то становится ясно, что означает упоминание имен pictureBox1 или checkBox1 в коде.
В Visual Basic по умолчанию первая буква любого имени элемента управления является заглавной, поэтому у элементов управления имена PictureBox1, CheckBox1 и так далее.
В форме есть четыре кнопки. Интегрированная среда разработки назвала их как button1, button2, button3 и button4. Только по их текущему имени нельзя узнать, какая кнопка является кнопкой Закрыть , а какая кнопкой Показать рисунок . Вот почему присвоение элементам управления в виде кнопок более осмысленных названий полезно.
Присвоение имен элементам управления "Кнопка"
В форме нажмите кнопку Закрыть . (Если все кнопки все еще выделены, для отмены выделения нажмите клавишу ESC.) Прокрутите содержимое окна Свойства, пока не появится свойство (Name) . (Свойство (Name) расположено в верхней части, когда свойства расположены в алфавитном порядке.) Измените имя на closeButton, как показано на снимке экрана ниже.
_Окно Свойства _ с именем closeButton_ _
Переименуйте другие три кнопки как backgroundButton, clearButton, showButton. Имена можно проверить в раскрывающемся списке селектора элементов управления в окне Свойства . Отобразятся новые имена кнопок.
Двойным щелчком нажмите кнопку Показать рисунок в форме. В качестве альтернативы можно нажать кнопку Показать рисунок в форме, а затем нажать клавишу ВВОД. При этом в главном окне интегрированной среды разработки открывается дополнительная вкладка, которая называется Form1.cs. (Если вы используете Visual Basic, она называется Form1.vb.)
На этой вкладке отображается файл кода для формы, как показано на снимке экрана ниже.
На вкладке Form1.cs или Form1.vb кнопка showButton может отображаться как ShowButton.
Обратите внимание на эту часть кода.
Вы видите код showButton_Click() (или ShowButton_Click() ). Интегрированная среда разработки добавила его в код формы при открытии файла кода для кнопки showButton . Во время разработки при открытии файла кода для элемента управления в форме для элемента управления создается код, если он еще не существует. Этот код, известный как метод, выполняется при запуске приложения и выборе элемента управления (в данном случае кнопки Показать рисунок).
Снова выберите вкладку конструктора Windows Forms (Form1.cs [Design]), а затем откройте файл кода для кнопки Очистить рисунок, чтобы создать метод для нее в коде формы. Повторите это действие для двух оставшихся кнопок. Каждый раз при этом действии среда интегрированной разработки добавляет в файл кода формы новый метод.
Чтобы добавить еще один метод, откройте файл кода для элемента управления CheckBox в конструкторе Windows Forms, чтобы интегрированная среда разработки создала метод checkBox1_CheckedChanged() . Этот метод вызывается каждый раз, когда пользователь устанавливает или снимает флажок.
Ниже показан новый код, который представлен в редакторе кода.
В вашем коде обработчики событий могут не отображаться в "верблюжьем" стиле.
Пять методов, которые были добавлены, называются обработчики событий, так как приложение вызывает их каждый раз, когда происходит событие (например, пользователь нажимает кнопку или устанавливает флажок).
При просмотре кода для элемента управления в интегрированной среде разработки во время разработки Visual Studio добавляет метод обработчика событий для элемента управления, если он не существует. Например, при двойном щелчке по кнопке интегрированная среда разработки добавляет обработчик события Click, который вызывается каждый раз, когда пользователь нажимает кнопку. Если дважды щелкнуть флажок, интегрированная среда разработки добавляет обработчик события CheckedChanged, который вызывается каждый раз, когда пользователь устанавливает или снимает флажок.
После добавления обработчика событий для элемента управления к нему можно вернуться в любой момент из конструктора Windows Forms с помощью двойного щелчка по элементу управления или выбрав Вид > Код в строке меню.
Имена являются важными при выполнении построения программы, и методы (включая обработчики событий) могут иметь любые имена, которые нужны. При добавлении обработчика событий с помощью интегрированной среды разработки она создает имя на основе имени элемента управления и обрабатываемого события.
Например, событие Click для кнопки с именем showButton вызывает метод обработчика событий showButton_Click() (или ShowButton_Click() ). Также обычно после имени метода добавляются открывающая и закрывающая круглые скобки () для определения рассматриваемых методов.
Если вы решите изменить имя переменной кода, щелкните правой кнопкой мыши переменную в коде, а затем выберите команду Рефакторинг > Переименовать. Все экземпляры этой переменной в коде будут переименованы. Дополнительные сведения см. в разделе Оптимизация кода с помощью переименования.
Теперь, когда я переименовываю кнопку в свойствах, имя функции остается таким же, что затрудняет связь кнопки и функции, у меня есть старый код, в котором присутствует множество таких случаев. Таким образом, я не могу удалить и воссоздать кнопки и другие вещи.
Как переименовать функции при переименовании кнопки?
спросил(а) 2017-07-12T14:52:00+03:00 4 года, 4 месяца назадВы можете изменить имя метода, просто набрав новое имя вместо старого при редактировании кода. Также как изменение любого текста.
Затем вы можете подтвердить, что элемент управления по-прежнему использует это событие:
Перейдите к конструктору формы и выберите элемент управления. Проверьте его свойства/события и убедитесь, что имя все еще выровнено. Перейдите к коду, сгенерированному конструктором форм, и найдите, где он назначает метод событию, и измените его, если его нужно изменить.
Любой из них должен также автоматически обновлять другой, хотя я полагаю, что обычно предпочтительнее использовать первый подход для согласованности с остальной частью процесса разработки формы.
Обратите внимание, что имя метода может быть любым, что угодно, нет строгого правила, в котором говорится, что это должно быть controlName_eventName(object sender, EvenArgs e) . Например, если у вас есть несколько элементов управления, которые совместно используют обработчик событий, вам не нужно решать, какой элемент управления получит имя в имени метода. Вы можете дать ему общее имя, например saveFormChanges(object sender, EvenArgs e) и по-прежнему назначать его как обработчик для этого события.
ответил(а) 2017-07-12T14:57:00+03:00 4 года, 4 месяца назадЩелкните правой кнопкой мыши на имени функции и выберите "Переименовать". Имя будет выделено (оно зеленое на моей системе, см. Рисунок ниже). Измените имя и нажмите кнопку "Применить". Событие нажатия кнопки будет правильно указывать на недавно переименованный метод.
измените button1_Click метода button1_Click в коде на новое имя, а затем нажмите ctrl+. (период) и выберите "Переименовать". В качестве альтернативы щелкните лампочку и выберите "Переименовать".
ответил(а) 2017-07-12T14:57:00+03:00 4 года, 4 месяца назадперейдите к своему дизайну. Щелкните правой кнопкой мыши → Свойства (F4) → События → ClickEvent → Введите имя, которое вам нужно, и щелкните по нему, чтобы создать событие Click с именем, которое вы ввели
ответил(а) 2017-07-12T14:57:00+03:00 4 года, 4 месяца назадВам нужно изменить имя события в окне свойств.
ответил(а) 2017-07-12T14:54:00+03:00 4 года, 4 месяца назадИмя функции не обязательно должно соответствовать имени кнопки, это просто соглашение, которое упрощает понимание того, какой элемент привязан к какой функции на каком событии.
Если вы введете файл FormName.Designer.cs , вы увидите функцию InitializeComponent которая содержит настройки свойств всех элементов формы, включая привязку их событий. Например, у вас, вероятно, будет нечто подобное:
где button1 - это имя элемента, Click - это имя события этого элемента, а button1_Click - это имя функции, обрабатывающей это событие.
Элементы управления представляют собой визуальные классы, которые получают введенные пользователем данные и могут инициировать различные события. Все элементы управления наследуются от класса Control и поэтому имеют ряд общих свойств:
Anchor : Определяет, как элемент будет растягиваться
BackColor : Определяет фоновый цвет элемента
BackgroundImage : Определяет фоновое изображение элемента
ContextMenu : Контекстное меню, которое открывается при нажатии на элемент правой кнопкой мыши. Задается с помощью элемента ContextMenu
Cursor : Представляет, как будет отображаться курсор мыши при наведении на элемент
Dock : Задает расположение элемента на форме
Enabled : Определяет, будет ли доступен элемент для использования. Если это свойство имеет значение False, то элемент блокируется.
Font : Устанавливает шрифт текста для элемента
ForeColor : Определяет цвет шрифта
Location : Определяет координаты верхнего левого угла элемента управления
Name : Имя элемента управления
Size : Определяет размер элемента
Width : ширина элемента
Height : высота элемента
TabIndex : Определяет порядок обхода элемента по нажатию на клавишу Tab
Tag : Позволяет сохранять значение, ассоциированное с этим элементом управления
Кнопка
Наиболее часто используемым элементом управления является кнопка. Обрабатывая событие нажатия кнопки, мы может производить те или иные действия.
При нажатии на кнопку на форме в редакторе Visual Studio мы по умолчанию попадаем в код обработчика события Click , который будет выполняться при нажатии:
Оформление кнопки
Чтобы управлять внешним отображением кнопки, можно использовать свойство FlatStyle. Оно может принимать следующие значения:
Flat - Кнопка имеет плоский вид
Popup - Кнопка приобретает объемный вид при наведении на нее указателя, в иных случаях она имеет плоский вид
Standard - Кнопка имеет объемный вид (используется по умолчанию)
System - Вид кнопки зависит от операционной системы
Изображение на кнопке
Как и для многих элементов управления, для кнопки можно задавать изображение с помощью свойства BackgroundImage. Однако мы можем также управлять размещением текста и изображения на кнопки. Для этого надо использовать свойство TextImageRelation . Оно приобретает следующие значения:
Overlay : текст накладывается на изображение
ImageAboveText : изображение располагается над текстом
TextAboveImage : текст располагается над изображением
ImageBeforeText : изображение располагается перед текстом
TextBeforeImage : текст располагается перед изображением
Например, установим для кнопки изображение. Для этого выберем кнопку и в окне Свойств нажмем на поле Image (не путать с BackgroundImage). Нам откроется диалоговое окно установи изображения:
В этом окне выберем опцию Local Resource и нажмем на кнопку Import , после чего нам откроется диалоговое окно для выбора файла изображения.
После выбора изображения мы можем установить свойство ImageAlign , которое управляет позиционированием изображения на кнопке:
Нам доступны 9 вариантов, с помощью которых мы можем прикрепить изображение к определенной стороне кнопки. Оставим здесь значение по умолчанию - MiddleCenter , то есть позиционирование по центру.
Затем перейдем к свойству TextImageRelation и установим для него значение ImageBeforeText . В итоге мы получим кнопку, где сразу после изображения идет надпись на кнопке:
Клавиши быстрого доступа
При работе с формами при использовании клавиатуры очень удобно пользоваться клавишами быстрого доступа. При нажатии на клавиатуре комбинации клавиш At+некоторый символ, будет вызываться определенная кнопка. Например, зададим для некоторой кнопки свойство Text равное &Аватар . Первый знак - амперсанд - определяет ту букву, которая будет подчеркнута. В данном случае надпись будет выглядеть как А ватар. И теперь чтобы вызвать событие Click, нам достаточно нажать на комбинацию клавиш Alt+А.
Кнопки по умолчанию
Форма, на которой размещаются все элементы управления, имеет свойства, позволяющие назначать кнопку по умолчанию и кнопку отмены.
Так, свойство формы AcceptButton позволяет назначать кнопку по умолчанию, которая будет срабатывать по нажатию на клавишу Enter.
Аналогично работает свойство формы CancelButton , которое назначает кнопку отмены. Назначив такую кнопку, мы можем вызвать ее нажатие, нажав на клавишу Esc.
Уроки программирования, алгоритмы, статьи, исходники, примеры программ и полезные советы
Как поменять цвет фона элементов в Windows Forms
В данной статье мы разберем несколько вариантов изменения цвета элементов Windows Forms на примере фона формы Form1 и прочих компонентов.
Способ №1. Изменение цвета в свойствах элемента.
Для многих это самый легкий способ изменения цветовой палитры элементов, так как не надо писать код, всё визуализировано и интуитивно понятно.
Здесь имеется большое количество цветовых схем и их визуальных представлений.
Выберем для примера какой-либо из цветов, чтобы изменить фон формы:
Легко, незамысловато, понятно.
Следующие способы будут производиться в коде.
Способ №2. Изменение цвета, используя структуру Color.
Это самый простой способ среди кодовых вариаций.
Если мы захотим закрасить фон формы в зеленый цвет, то строка кода будет выглядеть вот так:
При запуске форма будет выглядеть так:
Если понадобится изменить цвет, например, кнопки Button на тёмно-бордовый, код будет таким:
Данный способ прост тем, что требуется лишь написать название цвета, которых также большое количество.
Зачастую этих двух способов хватает для оформления программы. Если же нужна более гибкая настройка или же среди стандартных цветов не имеется необходимых, можно воспользоваться способами, описанными ниже.
Способ №3. Изменение цвета, используя метод Color.Argb.
Этот и следующий методы позволят генерировать нужный цвет, используя значения цветового канала RGB.
Данный способ позволяет регулировать интенсивность трех этих цветов, при смешивании которых и получится нужный нам оттенок.
Словесно это выглядит вот так:
Названиеэлементаформы.BackColor = Color.FromArgb(Насыщенность красного, Насыщенность зеленого, Насыщенность синего);
Чтобы закрасить фон программы в чёрный цвет, используя данный метод, надо написать вот такую строку:
Читайте также: