Как запрограммировать кнопку в visual studio
Доброго времени суток! В этом уроке мы создадим первое приложение с графическим интерфейсом, которое будет обрабатывать действия пользователя. На самом деле, все будет очень просто, но информация, которую Вы получите, определит дальнейшее развитие Вашего обучения. Я покажу как «строить» интерфейс приложения в дизайнере, как обрабатывать события (другими словами, как реагировать на действия пользователя) и как редактировать код, ассоциированный с графическим интерфейсом. И так, к делу!
Создадим новый проект приложения с графическим интерфейсом (как это делать, я показывал в предыдущем уроке). Затем, зададим главному окну заголовок «Hello World». Как устанавливать заголовок окна, тоже рассказывалось в предыдущем уроке. Для тех кто забыл, мы выделяем окно (форму) в дизайнере (левым кликом мыши по окну), переходим в область редактирования свойств, ищем свойство «Text» и справа от него вводим текст «Hello World». Если Вы соберёте проект и запустите приложение, то получите примерно следующий результат:
Пустое окно с установленным заголовком
Теперь, давайте добавим кнопку на нашу форму. Для этого в левой части окна Visual Studio (по умолчанию, в левой части) найдем панель элементов (см. рисунок ниже).
Панель элементов в MS Visual Studio
Наведем на нее курсор и кликнем левой кнопкой мыши, и тогда, панель элементов раскроется, как показано на рисунке ниже.
Раскрытая панель элементов MS Visual Studio
Как видно, в панели элементов перечислены группы элементов, сейчас нас интересует группа «Стандартные элементы управления», давайте раскроем её (результат показан на рисунке ниже).
Группа стандартных элементов управления
Теперь, давайте найдем элемент «Button» (он выделен на рисунке выше) и перетащим его на нашу форму (перетаскивание осуществляется обычным для Windows способом, так называемым Drag and Drop, т.е. наводим курсор на элемент, нажимаем левую кнопку мыши, и не отпуская её, перемещаем курсор на любое место формы, а затем, отпускаем кнопку мыши). Результат показан на рисунке ниже.
Окно с кнопкой в дизайнере Visual Studio
Теперь «настроим» перетащенную кнопку, для этого зададим осмысленные значения нужным свойствам этой кнопки. Для этого, убедимся, что кнопка выделена в дизайнере, и перейдем в область свойств, где найдем свойство «Name», которому зададим значение «MainBtn» (см. рисунок ниже).
Установка свойства «Name» для кнопки
Теперь давайте зададим надпись на кнопке, для этого установим значение свойства «Text» (обратите внимание, такое же свойство было и у формы). Установим этому свойству значение «Показать приветствие». Результат будет примерно таким, как показано на рисунке ниже.
Установленное свойство «Text» для кнопки
Увеличенная кнопка на форме
Теперь можно собрать проект и запустить приложение, в результате появится окно следующего вида:
Но если мы попробуем нажать на кнопку, то ничего не произойдет, так как мы не реализовали обработчик таких действий пользователя. Давайте исправим это упущение. Для этого, закроем приложение и вернемся к дизайнеру. После чего, выполним двойной клик левой кнопкой мыши по кнопке. Нас, автоматически, Visual Studio переместит в область редактирования кода (из области визуального дизайнера), но это еще не всё, Visual Studio так же создаст специальный метод, который будет вызываться системой, всякий раз, после того, как пользователь нажмет на кнопку в нашем приложении (см. рисунок ниже).
Область редактирования кода (связанного с формой)
В этом самом месте области кода, мы будем писать тот код, который нужно выполнять при нажатии пользователем на кнопку в нашем приложении. Это так называемые обработчик события (в данном случае, нажатия на кнопку). Давайте в ставим в обработчик следующий код:
Как видите, очень простой код… Теперь снова соберем проект и запустим приложение. Когда приложение запустится, нажмите на кнопку, и вы получите такой результат:
Конечный результат работы приложения
Как видите, мы поприветствовали мир!
И так, в этом уроке мы редактировали форму в дизайнере, устанавливали значения свойствам кнопки и окна (формы), обрабатывали события в коде приложения. Да, урок получился длинным, но он важен, и разбить его на части практически невозможно, а я всё больше задумываюсь о создании видеоуроков. А в следующем уроке, будет сделан небольшой разбор полетов.
In this series of three tutorials, you'll create a Windows Forms application that loads a picture and displays it. The Visual Studio Integrated Design Environment (IDE) provides the tools you need to create the app. To learn more, see Welcome to the Visual Studio IDE.
In this third tutorial, you learn how to:
- Add event handlers for your controls
- Write code to open a dialog box
- Write code for the other controls
- Run your application
Prerequisites
This tutorial builds on the previous tutorials, Create a picture viewer application and Add UI controls to the picture viewer. If you haven't done those tutorials, go through them first.
Add event handlers for your controls
In this section, add event handlers for the controls that you added in the second tutorial, Add controls to a picture viewer application. Your application calls an event handler when an action takes place, such as selecting a button.
Open Visual Studio. Your Picture Viewer project appears under Open recent.
In the Windows Forms Designer, double-click the Show a picture button. You can instead select the Show a picture button on the form, and then press Enter.
This tab displays the code file behind the form.
Your Form1.vb tab might display showButton as ShowButton.
Focus on this part of the code.
Choose the Windows Forms Designer tab again, and then double-click the Clear the picture button to open its code. Repeat for the remaining two buttons. Each time, the Visual Studio IDE adds a new method to the form's code file.
Double-click the CheckBox control in Windows Forms Designer to add a checkBox1_CheckedChanged() method. When you select or clear the check box, it calls this method.
The following snippet shows the new code that you see in the code editor.
Methods, including event handlers, can have any name that you want. When you add an event handler with the IDE, it creates a name based on the control's name and the event being handled.
For example, the Click event for a button named showButton is called showButton_Click() or ShowButton_Click() . If you want to change a code variable name, right-click the variable in the code and then choose Refactor > Rename. All instances of that variable in the code are renamed. For more information, see Rename refactoring.
Write code to open a dialog box
The Show a picture button uses the OpenFileDialog component to display a picture file. This procedure adds the code used to call that component.
The Visual Studio IDE offers a powerful tool called IntelliSense. As you type, IntelliSense suggests possible code.
In Windows Forms Designer, double-click the Show a picture button. The IDE moves your cursor inside the showButton_Click() or ShowButton_Click() method.
Type an i on the empty line between the two braces < >or between Private Sub. and End Sub . An IntelliSense window opens.
The IntelliSense window should highlight the word if . Select the Tab key to insert if .
IntelliSense displays openFileDialog1.
Select Tab to add openFileDialog1.
Type a period ( . ) or dot, right after openFileDialog1. IntelliSense provides all of the OpenFileDialog component's properties and methods. Start to type ShowDialog and select Tab The ShowDialog() method will show the Open File dialog box.
Add parentheses immediately after the "g" in ShowDialog : () . Your code should be openFileDialog1.ShowDialog() .
Add another space. Use IntelliSense to enter DialogResult.
Type a dot to open the DialogResult value in the IntelliSense window. Enter the letter O and choose the Tab key to insert OK.
if (openFileDialog1.ShowDialog() == DialogResult.OK)
For Visual Basic, it should be the following.
If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
Add the following line of code.
You can copy and paste or use IntelliSense to add it. Your final showButton_Click() method should look similar to the following code.
Add the following comment to your code.
It's the best practice to always comment your code. Code comments make it easier to understand and maintain your code in the future.
Write code for the other controls
If you run your application now, you can select Show a picture. Picture Viewer opens the Open File dialog box, where you can select a picture to display.
In this section, add the code for the other event handlers.
In Windows Forms Designer, double-click the Clear the picture button. Add the code in the braces.
Double-click the Set the background color button and add the code in braces.
Double-click the Close button and add the code in braces.
Double-click the Stretch checkbox and add the code in braces.
Run your application
You can run your application at any time, while you're writing it. After you add the code in the previous section, the Picture Viewer is complete. As in the previous tutorials, use one of the following methods to run your application:
- Select the F5 key.
- On the menu bar, select Debug >Start Debugging.
- On the toolbar, select the Start button.
A window with the title Picture Viewer appears. Test all the controls.
Select the Set the background color button. The Color dialog box opens.
Choose a color to set the background color.
Select Show a picture to display a picture.
Select and unselect Stretch.
Select the Clear the picture button to make sure the display clears.
Select Close to exit the app.
Next steps
Congratulations! You've completed this series of tutorials. You've done these programming and design tasks in the Visual Studio IDE:
Continue learning with another tutorial series on how to create a timed math quiz.
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет элемент управления "кнопка Windows".
Примеры
В следующем примере кода создается Buttonобъект, задающий его DialogResult свойство DialogResult.OKи добавляющий его в .Form
Комментарии
Button Можно щелкнуть мышью, клавишу ВВОД или ПРОБЕЛ, если кнопка имеет фокус.
AcceptButton Задайте свойство или CancelButton свойство, Form позволяющее пользователям нажимать кнопку, нажимая клавиши ВВОД или ESC, даже если кнопка не имеет фокуса. Это дает форму поведения диалогового окна.
При отображении ShowDialog формы с помощью метода можно использовать DialogResult свойство кнопки, чтобы указать возвращаемое значение ShowDialog.
Внешний вид кнопки можно изменить. Например, чтобы сделать его неструктурированным для веб-внешнего вида, задайте для свойства FlatStyle.Flatзначение FlatStyle . Свойство FlatStyle также может быть задано FlatStyle.Popupкак плоское, пока указатель мыши не перейдет по кнопке, а затем кнопка принимает стандартный внешний вид кнопки Windows.
Если элемент управления с фокусом принимает и обрабатывает клавишу ВВОД, Button он не обрабатывается. Например, если фокус на многостроке TextBox или другой кнопке установлен, этот элемент управления обрабатывает клавишу ВВОД, а не кнопку "Принять".
Конструкторы
Инициализирует новый экземпляр класса Button.
Свойства
Получает объект AccessibleObject, назначенный элементу управления.
Возвращает или задает описание выполняемого по умолчанию действия элемента управления для использования клиентскими приложениями со специальными возможностями.
Возвращает или задает описание элемента управления, используемого клиентскими приложениями со специальными возможностями.
Возвращает или задает имя элемента управления, используемого клиентскими приложениями со специальными возможностями.
Возвращает или задает доступную роль элемента управления.
Возвращает или задает значение, указывающее, может ли элемент управления принимать данные, перетаскиваемые в него пользователем.
Возвращает или задает границы контейнера, с которым связан элемент управления, и определяет способ изменения размеров элемента управления при изменении размеров его родительского элемента.
Возвращает или задает значение, указывающее, отображается ли знак с многоточия (. ) в правом углу элемента управления, обозначающий, что текст элемента управления выходит за пределы указанной длины этого элемента.
Возвращает или задает местоположение, в котором выполняется прокрутка этого элемента управления в ScrollControlIntoView(Control).
Возвращает или задает значение, указывающее, производятся ли изменения размеров элемента управления в соответствии с его содержимым.
Возвращает или задает режим, с помощью которого Button может автоматически изменять свои размеры.
Возвращает или задает цвет фона элемента управления.
Возвращает или задает фоновое изображение, отображаемое на элементе управления.
Возвращает или задает макет фонового изображения в соответствии с перечислением ImageLayout.
Возвращает или задает значение BindingContext для элемента управления.
Возвращает расстояние в пикселях между нижней границей элемента управления и верхней границей клиентской области контейнера.
Возвращает или задает размер и местоположение (в пикселях) элемента управления, включая его неклиентские элементы, относительно его родительского элемента управления.
Получает значение, указывающее, можно ли для свойства ImeMode установить активное значение с целью включения поддержки IME.
Возвращает значение, указывающее, может ли элемент управления получать фокус.
Определяет, могут ли вызываться события в элементе управления.
Возвращает значение, указывающее, доступен ли элемент управления для выбора.
Возвращает или задает значение, указывающее, была ли мышь захвачена элементом управления.
Возвращает или задает значение, указывающее, вызывает ли элемент управления выполнение проверки для всех элементов управления, требующих проверки, при получении фокуса.
Возвращает прямоугольник, представляющий клиентскую область элемента управления.
Возвращает или задает высоту и ширину клиентской области элемента управления.
Возвращает название организации или имя создателя приложения, содержащего элемент управления.
Возвращает объект IContainer, который содержит коллекцию Component.
Возвращает значение, указывающее, имеет ли элемент управления или один из его дочерних элементов фокус ввода в настоящий момент.
Возвращает или задает контекстное меню, связанное с элементом управления.
Возвращает или задает объект ContextMenuStrip, сопоставленный с этим элементом управления.
Возвращает коллекцию элементов управления, содержащихся в элементе управления.
Возвращает значение, указывающее, был ли создан элемент управления.
Возвращает базовый класс CreateParams при создании окна.
Возвращает или задает курсор, отображаемый, когда указатель мыши находится на элементе управления.
Возвращает привязки данных для элемента управления.
Возвращает или задает курсор по умолчанию для элемента управления.
Возвращает стандартный режим редактора методов ввода, поддерживаемый данным элементом управления.
Возвращает размер пустого пространства в пикселях между элементами управления, которое определено по умолчанию.
Возвращает длину и высоту в пикселях, которые были указаны в качестве максимального размера элемента управления.
Возвращает длину и высоту в пикселях, которые были указаны в качестве минимального размера элемента управления.
Возвращает внутренние промежутки в содержимом элемента управления в пикселях.
Получает размер элемента управления по умолчанию.
Возвращает значение, указывающее, находится ли данный компонент Component в режиме конструктора в настоящее время.
Получает значение DPI для устройства, на котором сейчас отображается элемент управления.
Возвращает или задает значение, возвращаемое в родительскую форму при нажатии кнопки.
Возвращает прямоугольник, представляющий отображаемую область элемента управления.
Получает значение, указывающее, находится ли базовый класс Control в процессе удаления.
Возвращает или задает границы элемента управления, прикрепленные к его родительскому элементу управления, и определяет способ изменения размеров элемента управления с его родительским элементом управления.
Возвращает или задает значение, указывающее, должна ли поверхность этого элемента управления перерисовываться с помощью дополнительного буфера, чтобы уменьшить или предотвратить мерцание.
Возвращает или задает значение, указывающее, может ли элемент управления отвечать на действия пользователя.
Возвращает список обработчиков событий, которые прикреплены к этому объекту Component.
Возвращает внешний вид границ и цвета, используемые для отображения состояния флажка и состояния мыши.
Возвращает или задает плоский внешний вид для кнопки.
Возвращает значение, указывающее, имеется ли на элементе управления фокус ввода.
Возвращает или задает шрифт текста, отображаемого элементом управления.
Возвращает или задает высоту шрифта элемента управления.
Возвращает или задает цвет элемента управления.
Возвращает дескриптор окна, с которым связан элемент управления.
Возвращает значение, указывающее, содержит ли элемент управления один или несколько дочерних элементов.
Возвращает или задает высоту элемента управления.
Возвращает или задает изображение, отображаемое на кнопке.
Возвращает или задает способ выравнивания изображения на кнопке.
Возвращает или задает значение индекса списка изображений для изображения, отображаемого на кнопке.
Получает или задает средство доступа к ключу для изображения в свойстве ImageList.
Получает или задает свойство ImageList, содержащее изображение Image, отображенное в кнопке.
Возвращает или задает режим редактора метода ввода, поддерживаемый данным элементом управления. Данное свойство не применимо к этому классу.
Получает или задает режим IME элемента управления.
Возвращает значение, указывающее, следует ли вызывающему оператору обращаться к методу invoke во время вызовов метода из элемента управления, так как вызывающий оператор находится не в том потоке, в котором был создан элемент управления.
Возвращает или задает значение, указывающее, является ли элемент управления видимым для приложений со специальными возможностями.
Указывает, является ли один из предков этого элемента управления сайтом и сайтом в DesignMode. Это свойство доступно только для чтения.
Возвращает или задает значение, указывающее, является ли этот элемент управления кнопкой по умолчанию.
Возвращает значение, указывающее, был ли удален элемент управления.
Возвращает значение, указывающее, имеется ли у элемента управления связанный с ним дескриптор.
Возвращает значение, указывающее, отображается ли зеркально элемент управления.
Получает кэшированный экземпляр механизма размещения элемента управления.
Возвращает или задает расстояние в пикселях между левой границей элемента управления и левой границей клиентской области его контейнера.
Возвращает или задает координаты левого верхнего угла элемента управления относительно левого верхнего угла его контейнера.
Возвращает или задает расстояние между элементами управления.
Возвращает или задает размер, являющийся верхней границей, которую может указать метод GetPreferredSize(Size).
Возвращает или задает размер, являющийся нижней границей, которую может указать метод GetPreferredSize(Size).
Возвращает или задает имя элемента управления.
Возвращает или задает заполнение в элементе управления.
Возвращает или задает родительский контейнер элемента управления.
Возвращает размер прямоугольной области, в которую может поместиться элемент управления.
Возвращает имя продукта сборки, содержащей элемент управления.
Возвращает версию сборки, содержащую элемент управления.
Возвращает значение, указывающее, осуществляет ли в настоящий момент элемент управления повторное создание дескриптора.
Возвращает или задает область окна, связанную с элементом управления.
Это свойство устарело.
Возвращает или задает значение, указывающее, перерисовывается ли элемент управления при изменении размеров.
Возвращает расстояние в пикселях между правой границей элемента управления и левой границей клиентской области его контейнера.
Возвращает или задает значение, указывающее, выровнены ли компоненты элемента управления для поддержки языков, использующих шрифты с написанием справа налево.
Получает значение, определяющее масштабирование дочерних элементов управления.
Возвращает значение, указывающее, должен ли элемент управления отображать прямоугольники фокуса.
Возвращает значение, указывающее, имеет ли пользовательский интерфейс соответствующее состояние, при котором отображаются или скрываются сочетания клавиш.
Возвращает или задает местонахождение элемента управления.
Возвращает или задает высоту и ширину элемента управления.
Возвращает или задает последовательность перехода по клавише TAB между элементами управления внутри контейнера.
Возвращает или задает значение, указывающее, может ли пользователь перевести фокус на данный элемент управления при помощи клавиши TAB.
Возвращает или задает объект, содержащий данные об элементе управления.
Возвращает или задает текст, связанный с этим элементом управления.
Возвращает или задает способ выравнивания текста на кнопке.
Возвращает или задает расположение текста и изображения относительно друг друга.
Возвращает или задает расстояние в пикселях между верхней границей элемента управления и верхней границей клиентской области его контейнера.
Получает родительский элемент управления, не имеющий другого родительского элемента управления Windows Forms. Как правило, им является внешний объект Form, в котором содержится элемент управления.
Возвращает или задает значение, определяющее, следует ли использовать Graphics класс (GDI+) или TextRenderer класс (GDI) для отрисовки текста.
Возвращает или задает значение, указывающее, должен ли первый символ, следующий за знаком амперсанда (&), использоваться как назначенная клавиша элемента управления.
Возвращает или задает значение, которое указывает, должен ли фон рисоваться с использованием стилей оформления (если они поддерживаются).
Возвращает или задает значение, указывающее, следует ли использовать курсор ожидания для текущего элемента управления и всех дочерних элементов управления.
Возвращает или задает значение, указывающее, отображаются ли элемент управления и все его дочерние элементы управления.
Возвращает или задает ширину элемента управления.
Данное свойство не применимо к этому классу.
Методы
Уведомляет клиентские приложения со специальными возможностями об указанном перечислении AccessibleEvents для указанного дочернего элемента управления.
Уведомляет клиентские приложения со специальными возможностями об указанном перечислении AccessibleEvents для указанного дочернего элемента управления.
Выполняет указанный делегат асинхронно в потоке, в котором был создан базовый дескриптор элемента управления.
Выполняет указанный делегат асинхронно в потоке, в котором был создан базовый дескриптор элемента управления.
Выполняет указанный делегат асинхронно с указанными аргументами в потоке, в котором был создан базовый дескриптор элемента управления.
Помещает элемент управления в начало z-порядка.
Возвращает значение, указывающее, является ли указанный элемент управления дочерним элементом.
Создает для элемента управления новый объект с поддержкой специальных возможностей.
Вызывает принудительное создание видимого элемента управления, включая создание дескриптора и всех видимых дочерних элементов.
Создает новый экземпляр коллекции элементов управления для данного элемента управления.
Создает объект Graphics для элемента управления.
Создает дескриптор для элемента управления.
Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.
Удаляет дескриптор, связанный с элементом управления.
Освобождает все ресурсы, занятые модулем Component.
Освобождает неуправляемые ресурсы, используемые объектом ButtonBase, а при необходимости освобождает также управляемые ресурсы.
Начинает операцию перетаскивания.
Поддерживает отрисовку в указанном точечном рисунке.
Получает возвращаемое значение асинхронной операции, представленное переданным объектом IAsyncResult.
Определяет, равен ли указанный объект текущему объекту.
Возвращает форму, в которой находится элемент управления.
Устанавливает фокус ввода на элемент управления.
Получает указанный объект AccessibleObject.
Получает значение, указывающее, как будет вести себя элемент управления, когда его свойство AutoSize включено.
Возвращает дочерний элемент управления, имеющий указанные координаты.
Возвращает дочерний элемент управления, расположенный по указанным координатам, определяя, следует ли игнорировать дочерние элементы управления конкретного типа.
Возвращает следующий объект ContainerControl в цепочке родительских элементов управления данного элемента.
Служит хэш-функцией по умолчанию.
Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра.
Возвращает следующий или предыдущий элемент среди дочерних элементов управления в последовательности клавиши TAB.
Вычисляет размер прямоугольной области, в которую помещается элемент управления.
Возвращает границы, внутри которых масштабируется элемент управления.
Возвращает объект, представляющий службу, предоставляемую классом Component или классом Container.
Возвращает значение указанного бита стиля элемента управления для данного элемента управления.
Определяет, находится ли элемент управления на верхнем уровне.
Возвращает объект Type для текущего экземпляра.
Скрывает элемент управления от пользователя.
Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.
Вызывается после добавления элемента управления в другой контейнер.
Делает недействительной всю поверхность элемента управления и вызывает его перерисовку.
Выполняет указанный делегат в том потоке, которому принадлежит базовый дескриптор окна элемента управления.
Выполняет указанный делегат в том потоке, которому принадлежит базовый дескриптор окна элемента управления.
Выполняет указанный делегат в том потоке, которому принадлежит основной дескриптор окна элемента управления, с указанным списком аргументов.
Выполняет указанный делегат в том потоке, которому принадлежит базовый дескриптор окна элемента управления.
Вызывает событие GotFocus для указанного элемента управления.
Вызывает событие LostFocus для указанного элемента управления.
Вызывает событие Click для указанного элемента управления.
Вызывает событие Paint для указанного элемента управления.
Вызывает событие PaintBackground для указанного элемента управления.
Определяет, является ли символ входным символом, который распознается элементом управления.
Определяет, является ли заданная клавиша обычной клавишей ввода или специальной клавишей, нуждающейся в предварительной обработке.
Преобразует логическое значение DPI в эквивалентное значение DPI DeviceUnit.
Преобразует размер из логических единиц в единицы устройства путем его масштабирования к текущему DPI и округлением вниз до ближайшего целого значения ширины и высоты.
Создает неполную копию текущего объекта Object.
Создает неполную копию текущего объекта MarshalByRefObject.
Уведомляет класс Button, является ли он кнопкой по умолчанию, чтобы соответствующим образом настроить его внешний вид.
Вызывает событие Invalidated, чтобы сделать недействительной указанную область элемента управления.
Элементы управления представляют собой визуальные классы, которые получают введенные пользователем данные и могут инициировать различные события. Все элементы управления наследуются от класса 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.
Доброго времени суток! В этом уроке я коротко расскажу о таких элементах графического интерфейса, как кнопки. Кнопка (button), пожалуй самый распространенный элемент графического интерфейса. Так что, изучение элементов я начну именно с кнопок.
Кнопка в панели элементов Visual Studio
Можете создать новый (или открыть существующий) проект приложения с графическим интерфейсом в Visual Studio и перетащить на главную форму кнопку. Чтобы проверять на практике, что я сейчас буду рассказывать. А начну я с основных свойство кнопки.
Основные свойства
Name — задает уникальное имя для кнопки (специфическое свойство, необходимо, для работы с кнопкой из кода).
Image — позволяет задать изображение для кнопки.
ImageAlign — позволяет задать выравнивание изображению на кнопке.
Enabled — разрешает или запрещает доступ к элементу, если указать значение true, то кнопка будет доступна для пользователя (он сможет нажимать на неё), значение false — наоборот, запрещает доступ.
MaximumSize — позволяет задать размер кнопке. Работает аналогично свойство MaximumSize у формы.
MinimumSize — позволяет задать размер кнопке. Работает аналогично свойство MinimumSize у формы.
Size — позволяет задать размер кнопке. Работает аналогично свойство Size у формы.
Text — позволяет задать надпись на кнопке.
TextAlign — позволяет задать выравнивание текста, например, по центу, или в левом верхнем углу кнопки.
Может иметь одно из значений, перечисленных в таблице ниже.
Значение | Краткое описание |
---|---|
TopLeft | Верхний левый угол |
TopCenter | Сверху и по центру |
TopRight | Правый верхний угол |
MiddleLeft | Посередине слева |
MiddleCenter | Посередине по центру |
MiddleRight | Посередине справа |
BottomLeft | Левый нижний угол |
BottomCenter | Снизу по центру |
BottomRight | Правый нижний угол |
Visible — позволят скрыть кнопку, если установлено в false. Для отображения кнопки снова, нужно установить этому свойству значение true.
Основные события
Click — возникает, при щелчке мышью на кнопке, либо при нажатии на клавишу Enter на клавиатуре.
MouseClick — возникает, при щелчке мышью (в обработчик события, передается дополнительная информация).
Читайте также: