Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Visul можно догадаться что в Visul Bsic реализован визуальный стиль программирования

Работа добавлена на сайт samzan.net: 2016-06-09

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 4.5.2024

ОСНОВЫ ЯЗЫКА ПРОГРАММИРОВАНИЯ VISUAL BASIC

    Для дальнейшего изучения программирования мы будем использовать язык программирования Visual Basic. 

    Название Visual Basic говорит само за себя. Visual Basic, в отличии от традиционных систем программирования, представляет совершенно иной стиль программирования. Уже по слову "Visual" можно догадаться, что в Visual Basic реализован визуальный стиль программирования. Вы даже не программируете, а проектируете приложение. Ваша первая задача при этом — создать рабочую среду, прежде чем начать набирать первую строку кода.

    Слово Basic в названии указывает на то, что синтаксис программ и операторы опираются на язык высокого уровня Basic (Beginners Atlpurpose Symbolic Instruction Code - многоцелевой код символических команд для начинающих), но заметно от него отличается.

     Создадим для примера простейшее приложение. Точнее создавать и программировать не придется вообще ничего: Visual Basic изначально предоставляет готовое приложение, состоящее из одного окна (формы) класса Form.

Запустим Visual Basic. После запуска Visual Basic на экране появляется диалоговое окно, в котором вы можете выбрать тип создаваемого приложения. Из этого же окна можно загрузить уже существующий проект.

      

    Любое приложение Windows выполняется в соответствующем окне.  Visual Basic - это среда разработки приложений под Windows, поэтому для любого разрабатываемого приложения предлагается окно (форма).

Итак, первая программа готова. Чтобы увидеть результат ее работы, запустим программу.

Свойства, методы и события

    

     Главное окно среды разработчика содержит несколько окон. Все окна подчиняются главному окну Visual Basic и могут "прикрепляться" (dockable) к одному из его краев.

    Окно формы (конструктор форм) — главный элемент приложения.  Форма представляет собой контейнер для элементов управления. Точки сетки на форме только помогают размещению элементов и при работе приложения не видны.
    
Панель компонентов.
Кнопки, поля ввода и другие элементы, которые нужны для создания приложения, расположены на этой панели.

    Окно свойств.
В этом окне задаются свойства выбранного элемента управления.

    Окно проекта.
В окне проекта отображаются все элементы приложения: формы, модули, классы и т.п., сгруппированные по категориям. В Visual Basic все разрабатываемые приложения называются проектами. Проект содержит несколько групп компонентов (формы, модули и т.п.).

    Окно расположения формы.
Оно показывает, где будет располагаться окно формы на экране монитора в период выполнения программы.

    Панель инструментов Visual Basic.
В верхней части экрана находится центр управления Visual Basic — панель инструментов (Toolbar).

    Окно кода.
Сразу после запуска Visual Basic это окно не отображается. Тем не менее, оно едва ли не самое важное в Visual Basic, так как именно в нем вводится программный код. Код в Visual Basic разделяется на процедуры и, как правило, непосредственно связан с определенными элементами управления.

    Итак. Запускайте Visual Basic, создайте стандартный проект. Ознакомитесь с основными элементами рабочей среды.

     Имя - это идентификатор объекта. Свойство Caption определяет текст надписи на объекте.    

     Установите с помощью окна свойств следующие значения: Имя - frmMyForm, Caption - "Моя форма". Запустите программу и обратите внимание на верхний левый угол окна.

Вы увидите надпись: .

Программным способом свойство Caption можно так: frmMyForm.Caption = "Это моя форма". Получим: .


Основные свойства элементов управления 

Имя

Для обращения к объекту в приложении предназначено свойство Имя (Name).

Надпись

Свойство Caption определяет текст надписи на объекте.

Позиция

Позицию элемента управления определяют четыре свойства: Left, Top,
Height и Width. Эти значения по умолчанию используют в качестве единицы измерения твип (twip). Твип — это экранно-независимая единица измерения, равная 1/20 точки принтера и гарантирующая независимость отображения элементов приложения от разрешения дисплея. Отсчет в системе координат ведется сверху вниз (Y) и слева направо (X).

Цвет

Управление цветовым оформлением элементов осуществляется с помощью
свойств BackColor (цвет фона), FillColor и ForeColor, которым по умолчанию назначаются стандартные цвета Windows.

Параметры шрифта

Вид шрифта в элементах управления выбирается путем установки значений свойства Font.

Доступность и видимость элемента управления

Часто при работе приложения требуется сделать недоступными для пользователя некоторые элементы управления. Для этого используют два свойства — Enabled и Visible.

    Мы уже говорили, что свойства можно изменять либо с помощью Окна свойств, либо программным способом. Про Окно свойств, наверное, уже понятно, но где писать код? Как программно изменить свойства объекта, как вызвать его методы? Пришло время познакомиться с событиями.

    Для выполнения программного кода всегда необходимо событие. Это одно из важнейших правил создания приложений в Visual Basic. Ни один код не выполняется без события.

    В программах, управляемых событиями (в отличии от основанных на линейном принципе построения программ, например, на QBasic), нет сплошного кода, который выполняется от начала до конца. Пользователь может в любое время нажать какую-нибудь кнопку в приложении, может выполнить ввод текста в поле, может в любое время прекратить обработку и вызвать другую программу.

         Рассмотрим несколько событий, которые могут обрабатываться большинством элементов управления.

События щелчка мыши

Событие Click

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

Событие DblCHck

Событие DblClick вызывается двойным щелчком кнопкой мыши на элементе управления. 

События, связанные с мышью

Событие MouseDown

Событие MouseDown вызывается при нажатии кнопки мыши. При этом процедуре обработки события передается несколько параметров: Button As Integer, Shift As Integer, X As Single, Y As Single.

Передаваемые параметры определяют состояние кнопок мыши (Button)(Нажата кнопка мыши: 1=левая, 2=правая, 4=средняя),
управляющих клавиш (Shift)(Нажата клавиша: 0=ничего, 1=[Shift], 2=[Ctrl], 4=[Alt]) и позицию курсора (X и Y). Параметры X и Y определяют позицию курсора мыши на экране относительно верхней левой
точки элемента управления.

Событие MovseUp

Событие Mouseup вызывается при отпускании кнопки мыши.

Событие MouseMove

Это событие вызывается, когда пользователь передвигает курсор
мыши.

События клавиатуры

Событие KeyPress

Событие Keypress возвращает код ASCII нажатой клавиши. При этом не перехватываются специальные клавиши.

События KeyDown, Key Up

Эти события вызываются при нажатии (KeyDown) или отпускании (KeyUp) клавиши. Они происходят даже при нажатии специальных клавиш управления, например функциональных клавиш. При этом передаются два параметра: KeyCode и Shift. Параметр KeyCode содержит клавиатурный код (а не ASCII) нажатой клавиши, а параметр Shift информирует о состоянии клавиш [Shin], [Ctrl] и [Alt].

После нажатия клавиши события наступают в такой последовательности: KeyDown, KeyPress И KeyUp.

    Теперь попробуем изменить надпись (свойство Caption) на форме программным способом. Пусть это происходит при событии FormLoad (загрузка формы), которое активируются при загрузке формы.

Для этого вызовем окно кода - Вид Код (или кнопкой на окне объектов).

Введем код в процедуру обработки события FormLoad: (1)

Private Sub Form_Load()
    frmMyForm.Caption = "Заголовок формы"                                 
End Sub

Теперь сделаем, чтобы форма при загрузке располагалась по центру экрана.

Сначала с помощью окна расположения формы установим положение формы, например, в верхнем левом углу.

Теперь добавим код, который позволит автоматически выравнять положение формы при ее загрузке по центру экрана. Для этого воспользуемся объектом Screen (Экран). Метод Move (Движение) служит для перемещения объектов. : (2)

Private Sub Form_Load()
    frmMyForm.Caption = "
Заголовок формы"
    frmMyForm.Move (Screen.Width - frmMyForm.Width) / 2, (Screen.Height - frmMyForm.Height) / 2
End Sub

    Работаем дальше. Пусть при щелчке по форме на форме появляется соответствующая надпись. Код очень прост: : (3)

Private Sub Form_Click()
    Print "Щелчок по форме"
End Sub


Private Sub Form_Load()
    frmMyForm.Caption = "Заголовок формы"
    frmMyForm.Move (Screen.Width - frmMyForm.Width) / 2, (Screen.Height - frmMyForm.Height) / 2
End Sub

С помощью окна свойств измените шрифт текста и запустите программу.

Давайте добавим еще обработку нажатия клавиш. : (4)

Private Sub Form_KeyPress(KeyAscii As Integer)
    frmMyForm.Print Chr$(KeyAscii);    'Chr$ -
преобразуте код в символ
End Sub

Готово! Вот результат работы:

Изучаем события, связанные с активностью мыши

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

Запускайте Visual Basic, создайте стандартный проект. Установите свойства формы: Имя (Name) - frmPaint, Caption - "Рисование на форме".

    Обычно рисование происходит при движении мыши, т.е. нашему приложению необходимо обрабатывать событие MouseMove, которое сообщает, что мышь перемещается по окну приложения. Добавим следующий код: : (5)

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    frmPaint.PSet (X, Y)
End Sub

Запустим приложение. При движении мыши по форме остается след из точек.

Но след должен оставаться, только если при движении мыши нажата левая кнопка мыши. Добавим это условие в код приложения. : (6)

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 1 Then frmPaint.PSet (X, Y)
End Sub

    Если запустить только что созданную программу, то можно обнаружить небольшую проблему. Проблема состоит в том, что для того, чтобы нарисовать сплошную линию, нам необходимо двигать курсор мыши очень медленно. Как с этой проблемой справляются другие графические приложения? Очень просто. Они соединяют линией две соседние точки положения мыши. Это может показаться странным, но именно так работают графические редакторы.

    Повторим этот метод в нашем приложении. : (7)

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 1 Then
frmPaint.Line -(X, Y)
End Sub

    Почти хорошо. Однако появилась неприятная особенность. Каждый раз, когда мы нажимаем кнопку мыши для того, чтобы начать рисовать новый фрагмент, приложение соединяет линией точку окончания предыдущего фрагмента с началом нового. Для этого нам понадобится знать начальное положение курсора мыши, при нажатии кнопки. Объявим две глобальные переменные в секции (General)(Declarations). : (8)

Dim intPrevX As Integer
Dim intPrevY As Integer

Теперь перепишем процедуру обработки события MouseMove и добавим обработку события MouseDown.

Dim intPrevX As Integer
Dim intPrevY As Integer

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 1 Then
    intPrevX = X
    intPrevY = Y
    End If
End Sub


Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 1 Then frmPaint.Line
(intPrevX, intPrevY)-(X, Y)
    intPrevX = X
    intPrevY = Y

End Sub

Готово! Запускаем приложение и радуемся результату.

    Радуемся, радуемся, но если приложение свернуть и обратно развернуть (или на время закрыть другим окном) изображение исчезнет. Избавиться от этой неприятности просто: установите свойство формы AutoRedraw равным true и окно будет перерисовываться автоматически.

    Теперь, на закуску, создадим цветной рисунок.

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

    Текущий цвет будем хранить в переменной Color типа Long (Длинное целое число от 32147483648 до +2147483647). Значение переменной можно задать различными способами:

  •  присвоив какое-то числовое значение (Color = 12345; Color = &H80000018);
  •  с помощью констант (Color = vbBlack);
  •  с помощью функции QBColor() (Color = QBColor(3));
  •  С помощью функции RGB() (Color = RGB(255,255,255)).

     Дополним уже имеющийся код:

Dim intPrevX As Integer
Dim intPrevY As Integer
Dim Color As Long

Private Sub Form_KeyPress(KeyAscii As Integer)
    Select Case Chr$(KeyAscii)
    Case "1"
    Color = RGB(255, 0, 0)
    Case "2"
    Color = RGB(0, 255, 0)
    Case "3"
    Color = RGB(0, 0, 255)
    Case Else
    Color = RGB(0, 0, 0)
    End Select
    lColor = RGB(0, 0, 0)
End Sub

Private Sub Form_Load()
Color = RGB(0, 0, 0)
End Sub


Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    If Button = 1 Then
    intPrevX = X
    intPrevY = Y
    End If
    End Sub
    Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Print lColor
    If Button = 1 Then frmPaint.Line (intPrevX, intPrevY)-(X, Y),
Color
    intPrevX = X
    intPrevY = Y
End Sub

    Одним из наиболее используемых событий формы является Load. Это событие происходит при загрузке формы в память. Поэтому Load лучше всего подходит для инициализации объектов и переменных, принадлежащих форме.

Готово!

Использование элементов управления

    Создание Windows-приложений в Visual Basic практически невозможно без использования элементов управления, так как они позволяют пользователю взаимодействовать с этими приложениями. Набор таких элементов управления не ограничен и может расширяться за счет так называемых пользовательских элементов управления.

    Почти во всем приложениях используется кнопка (CommandButton) для того, чтобы начать, прервать или закончить какой-либо процесс. Главным событием для кнопки является Click. Кроме этого события, у кнопки могут быть и другие, но они применяются редко.

    Текстовые поля (TextBox), метки (Label) и списки (ListBox) обычно используются для ввода и вывода данных, графические окна (PictureBox) - для вывода графики, переключатели (CheckBox) и флажки (OptionsButton) - для организации диалога.

Рассмотрим пример. Создадим приложение, реализующее либо сложение чисел, либо конкатенацию строк.

Разместите на форме следующие управляющие элементы и задайте им свойства, указанные в таблице:

Объект

Свойство

Значение

Форма

имя

frmCalc

Caption

Калькулятор

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

имя

txt1

text

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

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

имя

txt2

text

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

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

имя

txtResult

text

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

Кнопка - CommandButton

имя

cmdPlus

Caption

Сложить

Кнопка - CommandButton

имя

cmdSplic

Caption

Склеить

Надпись - Label

Caption

+ (плюс)

Надпись - Label

Caption

Результат

     Напишем процедуру обработки щелчка на кнопке "Склеить".

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

Private Sub cmdSplic_Click()
    txtResult.Text = txt1.Text + txt2.Text
End Sub

    В Visual Basic оператор + (плюс) может использоваться как для математического сложения, так и для соединения (конкатенации) строк.
    Поэтому при сложении лучше использовать символ
+, а при соединении строк — символ &. В противном случае могут возникнуть неожиданные последствия.

Private Sub cmdSplic_Click()
    txtResult.Text = txt1.Text
& txt2.Text
End Sub

    Проверим работу приложения. Введем в текстовые поля какой-то текст и нажмем кнопку "Склеить".

Теперь займемся обработкой события щелчка по кнопке "Сложить". Перед суммированием значений текстовых полей их необходимо преобразовать в числа. Функция VAL(s$) - преобразует числовую часть начала строки в число.

Private Sub cmdPlus_Click()
    txtResult.Text = Val(txt1.Text) + Val(txt2.Text)
End Sub

Готово!

Для быстрого открытия меню или вызова команды используются горячие клавиши. Для определения горячих клавиш достаточно в свойстве Caption перед соответствующей буквой поставить амперсанд (&). Например, для быстрого вызова команды "Сложить" в Caption необходимо ввести "&Сложить". Если же в качестве горячих клавиш нужно определить [Alt+к] для кнопки "Склеить", то в свойство Caption следует задать "С&клеить".

Теперь вместо нажатия на кнопки "Склеить" и "Сложить" можно использовать комбинации клавиш: [Alt + к] и [Alt + с].
Вот теперь - готово!

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

         Флажки — это элементы управления, которые можно отмечать (ставить "галочку"), выбирая из ряда опций одну или несколько. 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

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

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

 

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

Использование списков

    Давайте продолжим работу с проектом, который мы создали на предыдущем занятии.

    На этом занятии модернизируем проект таким образом, чтобы "ленивому" пользователю предоставить больший выбор. Для этого заменим текстовое поле - полем со списком.

    Поле со списком (ComboBox) — это по сути комбинированный список, который представляет собой комбинацию двух элементов управления — самого списка со значениями и поля ввода текста (текстового поля).

    Список (ListBox) — позволяет пользователю выбирать из списка один или несколько элементов. В любое время в список можно добавлять новые элементы или удалять существующие. Если не все элементы могут одновременно отобразиться в поле списка, то в нем автоматически отображаются полосы прокрутки.

    Поля со списком используются в том случае, если нельзя заранее определить значения, которые
следует включить в список, или список содержит слишком много элементов. В таком списке нужное значение можно не только выбирать, но и вводить непосредственно в поле ввода. Новое значение после ввода автоматически помещается в список.

    Для поля со списком важную роль играют события как поля ввода, так и списка. Основные из них  - Click, используемое для выбора элемента списка, и - Change — для изменения записи в поле ввода текста.

     Поле со списком имеет почти все свойства текстового поля (TextBox) и списка (ListBox) (исключением является свойство MultiLine). Однако особо следует выделить свойство Style, определяющее внешний вид и функционирование поля со списком.

    Откройте проект. Замените текстовое поле на поле со списком.

Задайте имя объекту - cboFileName, и задайте элементы списка (свойство List).


    Свойство списка Text — самая простая возможность получить текст выбранного элемента списка. В любой момент времени значение этого свойства содержит текст выбранного элемента списка или пустую строку, если ни один элемент не выбран. Для определения текста выбранного элемента существуют и другие возможности. Однако следует помнить, что и в памяти все элементы списка сохраняются в виде списка. При этом первый элемент списка имеет индекс 0.

    Присвоим этому свойству значение "Мой файл.txt" - это будет значение по-умочанию.

    Запустим проект на выполнение. Теперь пользователь может выбрать имя для файла из списка или ввести самостоятельно. Но если щелкнуть кнопку СОХРАНИТЬ, то появится сообщение об ошибке. А все оттого, что мы не исправили код записи в файл. Имя файла берется из текстового поля, но ведь мы его заменили на список.

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

Исправим этот код.

Private Sub cmd1_Click()
If Len(
cboFileName.Text) Then
If Option1.Value = True Then Open
cboFileName.Text For Append As #1
If Option2.Value = True Then Open
cboFileName.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

Теперь программа работает, но продолжим улучшение. Сделаем так, чтобы после добавление в файл, имя которого пользователь ввел сам, имя этого файла добавлялось в список. Для добавления в список служит метод AddItem.

Private Sub cmd1_Click()
If Len(cboFileName.Text) Then
cboFileName.AddItem (cboFileName.Text)
If Option1.Value = True Then Open cboFileName.Text For Append As #1
If Option2.Value = True Then Open cboFileName.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

Теперь при щелчке по кнопке ЗАПИСЬ в список добавляется новое значение. Но теперь появилась одна неприятная особенность - при записи в один и тот же файл, его имя несколько раз добавляется в список. Исправим это. Прежде чем добавить значение в список, переберем его и проверим нет ли уже такого значения. Переменную already будем использовать как флаг, который будет указывать нашли (1) или не нашли (0) такое значение в списке.

Private Sub cmd1_Click()
If Len(cboFileName.Text) Then
For i = 0 To cboFileName.ListCount
If cboFileName.List(i) = cboFileName.Text Then already = 1
Next i
If already = 0 Then
cboFileName.AddItem (cboFileName.Text)
If Option1.Value = True Then Open cboFileName.Text For Append As #1
If Option2.Value = True Then Open cboFileName.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

Готово! Запустите проект и проверьте его работу.

 

8




1. Значение касательного напряжения в этой же точке сечения равно МПа
2. адм устр во Северная Европа 1 Исландия Рейкьявик
3. Контрольная работа Кафедра Студент Ф
4. Методика і практика вузівського викладання
5. та Бактериологический показатель качества питьевой воды
6. рентгеновским спектрографом в котором измеряется длина волны рассеянных рентгеновских лучей
7. реферату- Теоретичні проблеми Капіталу К
8. свой Бог ты сам свой ближнийО будь же собственным ТворцомБудь бездной верхней бездной нижнейСвоим нача
9. Обгрунтування товарного портфелю торговельного підприємства ЗАТ Вентиляційні системи
10. План рекламной кампании хлебокомбината
11. Будильник Современные известия Русские ведомости
12. Тесты по ...
13. то придёт А кто вы сейчас узнаете.
14. ПЛ Капица
15. Дягиль лекарственный (дудник)
16. ИССЛЕДОВАНИЕ РЕЗОНАНСНЫХ ЦЕПЕЙ
17.  ЦЕНООБРАЗОВАНИЕ И ЦЕНОВАЯ ПОЛИТИКА В ТОПЛИВНОЭНЕРГЕТИЧЕСКОМ И МИНЕРАЛЬНОСЫРЬЕВОМ КОМПЛЕКСЕ Россия игр
18. Челябинская государственная академия культуры и искусств Факультет книжного бизнеса документоведения
19. Оценка объемов циркулирующей крови Определение источника кровотечения и его локализации
20. 1 Опишите современную систему документации обеспечения управления предприятием организацией учреждением.