Создание собственных диалоговых окон
Создание собственных диалоговых окон
Сложные приложения часто используют несколько форм. Например, во многих программах имеется диалоговое окно О программе, в котором отображаются информация о программе, номер версии, сведения об авторе и логотип компании.
Для создания подобных форм хорошо подойдет собственное диалоговое окно. Чтобы отобразить такое окно, используется метод ShowDialog. Этот метод делает недоступным родительскую форму, пока диалоговое окно находится на экране. Диалоговое окно может возвращать результат вызова метода ShowDialog не только себе, но и родительскому окну.
Предположим, что нужно создать специальное окно авторизации пользователя для доступа к программе. В состав проекта нужно включить новую форму, которая будет реализована как диалоговое окно проверки имени пользователя LogonForm. Это будет маленькое окно без четко очерченной границы. В нем надо разместить текстовое поле и две кнопки. Затем надо задать значения свойств FormBorderStyle, Size и Location. При загрузке основной формы и обработке события Load создается новый экземпляр объекта LogonForm и вызывается как диалоговое окно. Данное окно может вернуть значения DialogResult.OK, если пользователь ввел имя, или DialogResult.Cancel, если он просто закрыл форму. Если было введено правильное имя, то главная форма продолжает свою работу. В противном случае приложение следует закрыть. Соответствующий код приведен в листинге 7.3.
ВНИМАНИЕ
Чтобы элементы управления диалогового окна были доступны вызывающей форме, их надо объявить с модификатором public. По умолчанию используется модификатор private.
Листинг 7.3
private void Form1_Load(object sender, EventArgs e) {
LogonForm LogonFrm = new LogonForm();
if (LogonFrm.ShowDialog() == DialogResult.Cancel) {
LogonFrm.Dispose();
this.Close();
} else {
this.Text += " - " + LogonFrm.txtCheck.Text;
LogonFrm.Dispose();
}
}
После того как форма авторизации будет отображена на экране, нужно обработать события Click для нажатия кнопки проверки введенного имени пользователя или кнопки отмены. Первая кнопка проверяет правильность ввода имени. Если проверка завершилась успешно, то возвращается значение DialogResult.OK. Это иллюстрирует код, приведенный в листинге 7.4.
Листинг 7.4
private void butOK_Click(object sender, EventArgs e) {
if (txtCheck.Text == "Alex") {
this.DialogResult = DialogResult.OK;
} else {
MessageBox.Show("В доступе отказано. Попробуйте еще раз",
"Вход в программу");
}
}
Если пользователь не знает имени для доступа к программе, то ему придется нажать кнопку Отмена. В этом случае обработчик события butCancel_Click, код которого приведен в листинге 7.5, возвращает значение DialogResult.Cancel в главную форму, которая закрывает приложение.
Листинг 7.5
private void butCancel_Click(object sender, System.EventArgs e) {
this.DialogResult = DialogResult.Cancel;
}
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Использование Internet Explorer для создания диалоговых окон
Использование Internet Explorer для создания диалоговых окон Процесс создания сценария WSH, использующего Internet Explorer в качестве интерфейса, можно условно разделить на несколько этапов:? создание HTML-формы в отдельном файле;? написание функции для сценария WSH, в которой будет
Вызов системных функций и стандартных диалоговых окон оболочки Windows
Вызов системных функций и стандартных диалоговых окон оболочки Windows Из сценариев WSH можно выводить на экран стандартные диалоговые окна Windows (например, Выполнить (Run)) и модули панели управления (например, Установка даты и времени (Date/Time)). Для этого используются системные
Создание собственных команд для контекстного меню Проводника и Рабочего стола
Создание собственных команд для контекстного меню Проводника и Рабочего стола Мы знаем, как удалять или редактировать некоторые команды из контекстного меню Проводника и Рабочего стола. Настало время научиться создавать свои собственные команды. Информация о
Оптимизация оболочки с помощью диалоговых окон
Оптимизация оболочки с помощью диалоговых окон Теперь рассмотрим некоторые параметры стандартных диалогов Windows XP, редактирование которых может повысить общую скорость работы того или иного компонента системы.Во-первых, диалоговое окно Свойства: Экран. На вкладке
Глава 2. Создание диалоговых окон
Глава 2. Создание диалоговых окон В данной главе вы научитесь создавать диалоговые окна с использованием средств разработки Qt. Диалоговые окна предоставляют пользователю возможность задавать необходимые значения параметров и выбирать определенные режимы работы. Они
Быстрое проектирование диалоговых окон
Быстрое проектирование диалоговых окон Средства разработки Qt спроектированы таким образом, чтобы было приятно программировать «вручную» и чтобы этот процесс был интуитивно понятен; и нет ничего необычного в разработке всего приложения Qt на «чистом» языке С++. Все же
Встроенные классы виджетов и диалоговых окон
Встроенные классы виджетов и диалоговых окон Qt содержит большой набор встроенных виджетов и стандартных диалоговых окон, с помощью которых можно реализовать большинство возможных ситуаций. В данном разделе мы представим изображения экранов почти со всеми из них.
Создание пользовательских диалоговых окон
Создание пользовательских диалоговых окон Теперь, когда вы понимаете роль базовых элементов управления Windows Forms и суть процесса построения пользовательских элементов управления, давайте рассмотрим вопрос создания пользовательских диалоговых окон. Здесь хорошей
7.10. Создание собственных диспетчерских очередей с помощью GCD
7.10. Создание собственных диспетчерских очередей с помощью GCD Постановка задачи Требуется создавать собственные диспетчерские очереди с уникальными
Создание собственных методов DrawPie и FillPie
Создание собственных методов DrawPie и FillPie В данный момент .NET Compact Framework не поддерживает графические методы DrawPiе и FillPie, которые позволяли бы рисовать круговые секторы. Но можно создать свою версию этих методов, используя математические вычисления, как показано в листинге
Создание окон
Создание окон Чтобы создать окно, необходимо выполнить приведенную ниже последовательность действий.1. Активизировать этаж с построенным в предыдущем примере контуром стены.2. Нажать кнопку палитры инструментов.3. Открыть окно настройки параметров окна, нажав
Создание окон
Создание окон Рассмотрим пример создания окна.1. Активизируйте первый этаж вашего проекта.2. Выберите инструмент Window (Окно) щелчком на соответствующей кнопке палитры инструментов.3. Вызовите окно настройки параметров окна щелчком на кнопке информационной палитры.4.
Создание собственных шаблонов
Создание собственных шаблонов Теперь сфокусируемся на том, как создать собственный шаблон. Перед началом работы над шаблоном необходимо обдумать некоторые ключевые моменты. Рассмотрим их по
Практическая работа 3. Изучение диалоговых окон
Практическая работа 3. Изучение диалоговых окон Задание. Изучить элементы диалоговых окон на примере окна настройки фонового рисунка Рабочего стола и экранной заставки.Последовательность выполнения1. Откройте окно Персонализация, щелкнув правой кнопкой мыши на