Элемент управления Label (надпись) предназначен для вывода в нужном месте окна какого-либо поясняющего текста. Например, если рядом с текстовым полем (объектом типа TextBox) на форме расположить такую надпись с соответствующим текстом, то пользователю программы станет понятно, какого рода информацию надо вводить в текстовое поле.
Основным свойством элемента управления Label является свойство Text, в котором и находится поясняющая надпись. Текст, выводимый на элементе Label, может быть изменён в процессе выполнения программы. Это позволяет на объект типа Label выводить результат каких-либо вычислений, как это делается в примере в теме «Оконные приложения»:
s = a * h / 2;
label3.Text = "s=" + s.ToString();
Элемент управления TextBox (текстовое поле) предназначен для ввода или вывода текстовый информации, которая записывается в свойстве Text.
Так можно использовать данный элемент для ввода данных:
double a = double.Parse(textBox1.Text);
А это пример вывода информации в текстовое поле:
int v=1;
textBox3.Text="Выбран вариант №"+v.ToString();
Элемент управления Button (командная кнопка) предназначен для выполнения какого-либо действия в программе.
Свойство Text этого элемента должно показывать назначение командной кнопки.
Если щёлкнуть мышью по этому элементу, то будет выполняться обработчик события Click, связанный с этим элементом.
Для кнопки можно задать клавиши быстрого доступа. В этом случае можно не щёлкать мышь по кнопке, а нажимать сочетание клавиш Alt+<подчёркнутый символ в надписи кнопки>. Для задания клавиши быстрого доступа необходимо в свойстве текст кнопки перед необходимой буквой поставить символ & (амперсанд).
Для того, чтобы символ & (амперсанд) воспринимался в названии просто как символ, необходимо задать свойству UseMnemonic значение false.
Элемент управления флажок применяется для включения или выключения какого-либо режима работы программы. Для проверки состояния флажка используется его свойство Checked (true — включен, false — выключен).
В свойстве Text даётся пояснение по работе флажка.
Чаще всего флажки используют в окнах диалога. Флажки можно применять по одиночке или группами, причём состояние флажков в группах устанавливается независимо друг от друга.
Данный элемент (как и следующий — RadioButton), также имеет свойство UseMnemonic, которое здесь чаще всего не только не нужно, но и вредно. Попробуйте в свойстве Text флажка сделать надпись, состоящую из обозначения знаков операций побитовое И (&) или логическое ИЛИ (&&). Если UseMnemonic будет равно true, то вместо побитового И будет пустое место, а логическое ИЛИ лишится одного амперсанда. В общем для такой ситуации обязательно надо свойству UseMnemonic задавать значение false.
Элемент-переключатель (иногда говорят радио-кнопка) позволяет выбрать в окне диалога один из нескольких режимов работы. Обычно переключатели объединяют в группы. Если у одного из переключателей свойство Checked имеет значение true, то он будет включен, а все остальные переключатели группы будут автоматически выключены (свойство Checked имеет значение false).
Свойство Text задаёт пояснение о назначении переключателя.
Если переключатели размещены непосредственно на форме, то они представляют одну группу. Удобнее переключатели размещать на панели GroupBox (об этом элементе смотрите ниже). В этом случае можно создавать на одной форме несколько групп переключателей.
Обычно на этапе проектирования устанавливают свойство Checked, равным true, у того элемента, который является наиболее предпочтительным, а остальные переключатели делают выключенными.
В принципе на этапе проектирования все переключатели можно сделать выключенными, но на этапе выполнения программы, как только будет включен любой переключатель, далее в группе уже будет невозможно выключить все переключатели только за счёт нажимания на эти переключатели. Правда, можно предусмотреть какой-либо обработчик, в котором все переключатели будут выключены. Например, так выключаем все 4 переключателя:
void Button3Click(object sender, EventArgs e)
{
radioButton1.Checked=radioButton2.Checked
=radioButton3.Checked=radioButton4.Checked=false;
}
Эта панель используется для группировки элементов управления на форме.
С помощью этой панели можно дать какое-то общее название нескольким элементам. Также эта панель позволяет объединить в группу несколько связанных между собой переключателей.
Пример. Написать программу для выбора правильного ответа в тесте. Для простоты пока используем только один вопрос. Предполагается, что на вопрос есть один правильный ответ.
Порядок разработки программы
На форме разместим объекты:
textBox1 типа TextBox для записи в нём вопроса теста;
groupBox1 типа GroupBox для объединения в группу объектов типа RadioBox;
четыре объекта типа RadioBox — для выбора правильного ответа;
checkBox1 типа CheckBox для включения при необходимости текста подсказки;
textBox2 типа TextBox для вывода в нём текста подсказки;
label1 типа Label для вывода в нём текста «Выбранный ответ:»;
textBox3 типа TextBox для вывода в нём ответа пользователя.
По окончанию этапа проектирования будем иметь такую форму:
Текст файла MainForm.cs:
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
namespace Test_RadioBox
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
}
void Button2Click(object sender, EventArgs e)
{
Close();
}
void Button1Click(object sender, EventArgs e)
{
int v=0;
if(radioButton1.Checked) v=1;
if(radioButton2.Checked) v=2;
if(radioButton3.Checked) v=3;
if(radioButton4.Checked) v=4;
if(v==0)
{
textBox3.Text="Не выбран вариант ответа!!!";
}
else
{
textBox3.Text="Выбран вариант №"+v.ToString();
if(v==4)
textBox3.Text+=" Ответ правильный!";
else
textBox3.Text+=" Ответ неверный";
if(checkBox1.Checked)
textBox2.Text="Правильный ответ - шестнадцатеричная";
else
textBox2.Text="";
}
}
}
}
Результат работы программы:
|
|
|