Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учимся программировать.doc
Скачиваний:
7
Добавлен:
01.04.2025
Размер:
754.18 Кб
Скачать

Использование переключателей и флажков

Давайте теперь создадим проект, в котором предоставим пользователю возможность выбора тех или иных действий. Для этих целей будем использовать такие компоненты как флажок и переключатель.

Флажки — это элементы управления, которые можно отмечать (ставить "галочку"), выбирая из ряда опций одну или несколько. CheckBox может иметь два различных состояния — отмеченное и не отмеченное.

Переключатель (OptionButton) - элемент управления, представляющий собой кружок с точкой или без, предназначен для установки только одной опции из группы. Обычно все переключатели формы объединены в одну группу. Если вы желаете сформировать новую группу переключателей, то нужно поместить их в отдельный элемент-контейнер, например Frame.

Создадим проект, предназначенный либо для добавления текстовой информации в файл, либо для её перезаписи. С помощью переключателей пользователь будет иметь выбор между добавлением в конец файла и перезаписью. Флажок будет предоставлять возможность очистить поле ввода после операции.

Запустите VisualBasic. Создайте новый стандартный проект. Добавьте на форму компоненты и задайте им свойства приведенные в таблице.

 

Объект

Свойство

Значение

Форма

имя

frmMyForm

Caption

Запись в файл

Надпись - Label

Caption

Имя &файла:

Текстовое поле - TextBox

имя

txtFileName

text

"Мой файл.txt" (пустая строка)

Текстовое поле - TextBox

имя

txtInput

text

"" (пустая строка)

MiltiLine

True

Рамка - Frame

 

 

text

Действие

Переключатель - Option

имя

Option1

Caption

Добавить в файл

Переключатель - Option

имя

Option2

Caption

Переписать

Кнопка - CommandButton

имя

cmd1

Caption

&Запись

Флажок

имя

Check1

Caption

Очистить текстовое поле

 

Value

1 - Отмечено

 Для того чтобы текстовое поле сделать многострочным мы присвоили его свойству MiltiLine значение True (Истина).

 

Теперь необходимо написать обработчик события щелчка по кнопке "Запись".

Первым дело проверим не пусто ли "имя файла".

Private Sub cmd1_Click() If Len(txtFileName.Text) Then End If End Sub

Дальше в зависимости от того какой переключатель выбран откроем файл в соответствующем режиме.

Private Sub cmd1_Click() If Len(txtFileName.Text) Then If Option1.Value = True Then Open txtFileName.Text For Append As #1 If Option2.Value = True Then Open txtFileName.Text For Output As #1 Close #1 End If End Sub

Следующий шаг - запись в файл содержимого текстового поля.

Private Sub cmd1_Click() If Len(txtFileName.Text) Then If Option1.Value = True Then Open txtFileName.Text For Append As #1 If Option2.Value = True Then Open txtFileName.Text For Output As #1 Print #1, txtInput.Text Close #1 End If End Sub

Очистим поле ввода, если установлен соответствующий флаг. Свойство Value объекта Флажок(Check) может принимать одно из трех значений:

  • 0 - не отмечен;

  • 1 - отмечен;

  • 2 - отмеченный, но не доступный (устанавливается программно).

Private Sub cmd1_Click() If Len(txtFileName.Text) Then If Option1.Value = True Then Open txtFileName.Text For Append As #1 If Option2.Value = True Then Open txtFileName.Text For Output As #1 Print #1, txtInput.Text Close #1 If Check1.Value = 1 Then txtInput.Text = "" End If End Sub

Приложение почти готово. Но имеется один недостаток: если поле "Имя файла" пусто, запись в файл не производится. А пользователь об этом не знает! Необходимо ему это сообщить.

Для вывода различных сообщений имеется окно MessageBox. Почти все приложения Windows используют MessageBox, так как этот компонент входит в состав Windows, a Visual Basic только предоставляет возможность его вызова.

Вид окна MessageBox может быть различным, но в его состав всегда входят:

  • текст сообщения;

  • заголовок;

  • пиктограмма;

  • набор кнопок.

Для вывода этого окна используется функция MsgBox, которая возвращает информацию о том какую кнопку нажал пользователь (полезно при анализе ответа пользователя).

Вызывается функция так: Возвращаемое_значение = MsgBox (Сообщение [, Кнопки и значки] [, Заголовок] [, Файла помощи, Context])

Private Sub cmd1_Click() If Len(txtFileName.Text) Then If Option1.Value = True Then Open txtFileName.Text For Append As #1 If Option2.Value = True Then Open txtFileName.Text For Output As #1 Print #1, txtInput.Text Close #1 If Check1.Value = 1 Then txtInput.Text = "" Else MsgBox "Необходимо ввести имя файла", vbExclamation, "Внимание!" End If End Sub

Теперь, если пользователь забыл указать имя файла он получит сообщение об этом.

Готово. Запустите проект и "проиграйтесь" с ним. Затем откройте файл, в который сохранялась информация (если вы не указали полный путь в имени, то файл будет находится в папке с проектом) и убедитесь в правильности работы программы.

 

Получим:

  

  

!!! Не забудьте сохранить проект. Он нам потребуется на следующем занятии. !!!

 

Учимся программировать! Конспекты школьника.