Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
На форме остались активными только два управляющих элемента: командная кнопка “конец” и тестовое окно “описание модели”. В текстовое окно можно добавлять собственный текст и редактировать имеющийся.Содержание книги
Поиск на нашем сайте
При нажатии на кнопку “Конец” работа программы завершается. Это обеспечивается операторами:
Тексты всех процедур обработки событий примера: Private Sub Check2_Click() If Check2.Value = 1 Then Textl.Text = Textl.Text + Check2.Caption + Chr$(13) + Chr$(10) Check2.Enabled = False End If End Sub Private Sub Check3_Cli.ck() If Check3.Value = 0 Then Listi.Columns = 1 Else Listi.Columns = 2 End If End Sub Private Sub Check4_Click () If Check4.Value = 1 Then Check4.Enabled = False Textl.Text = Textl.Text + Check4.Caption + Chr$(13) + Chr$(10) End If End Sub Private Sub Combol_Click() Combol.Enabled = False Textl.Text = Textl.Text + Combol.Text + Chr$(13) + Chr$(10) Labell.Enabled = False Combo2.Enabled = True Label2.Enabled = True End Sub Private Sub Combo2_Click() Combo2.Enabled = False Label2.Enabled = False Private Sub Cornmand4_Click () Listl.AddItem Text2.Text Text2.Text = “” Commandl.Enabled = True End Sub • Private Sub Command2_Click() End End Sub Private Sub Command5_Click() Check2.Enabled = False Check4.Enabled = False Frame2.Enabled = False HScroill.Enabled = False Label4.Enabled = False Label5.Enabled = False Label6.Enabled = False Label7.Enabled = False Lab.el8.Enabled = False Commands.Enabled = False Textl.Text = Textl.Text + Label5.Caption + “Л.С” + Chr$(13) + Chr$(10) Framel.Enabled = True Listi.Enabled = True Text2.Enabled = True Command4.Enabled = True Check3.Enabled = True Commandl.Enabled = True End Sub Private Sub Command6_Click() ‘If Listl.ListIndex >= 0 Then Textl.Text = Textl.Text + Listl.Text + Chr$(13) + Chr$(10) Framel.Enabled = False Listi.Enabled = False Text2.Enabled = False Command4.Enabled = False Check3.Enabled = False Commandl.Enabled = False Command6.Enabled = False Commands.Enabled = False End If End Sub Textl.Text = Textl.Text + Combo2.Text + Chr$(13) + Chr$(10) If Combo2.Text.= “Красный” Then LabelS.BackColor = &HFF& Elself Combo2.Text = “Белый” Then LabelS.BackColor = &HFFFFFF Elself Combo2.Text = “черный” Then LabelS.BackColor = &HO Elself Combo2.Text = “Синий” Then LabelS.BackColor = &HFFOOOO Elself Combo2.Text = “Зеленый” Then LabelS.BackColor = &HCOOO& End If Combo3.Enabled = True Label3.Enabled = True End Sub Private Sub Combo3_Click() Combo3.Enabled = False Label3.Enabled = False Textl.Text = Textl.Text + Combo3.Text + Chr$(13) + Chr$(10) Frame4.Enabled = True ‘ “ Optioni.Enabled = True Option2.Enabled = True Option3.Enabled = True End Sub Private Sub Commandl Click () Listi.Clear ~ Commandl.Enabled = False End Sub • Private Sub Command3_Click() If Listl.ListIndex >= 0 Then Listi.Removeltem Listl.ListIndex Command3.Enabled = False End If If Listi.ListCount = 0 Then Commandl.Enabled = False End If End Sub Private Sub Form_Load() Label4.Caption = Str$(HScrolll.Value * 735.499 / 1000) Label5.Caption = Str$(HScrolll.Value) Combol.Addltem “Мерседес” Combol.Addltem “Ауди” Combol.Addltem “Фольксваген” Combol.Addltem “Шкода” Combol.Addltem “Рено” Combol.Addltem “Пежо” Combol.Addltem “Запорожец” Combo2.Addltem “Красный” Combo2.Addltem “Бельм” Combo2.Addltem “черный” Combo2.Addltem “Синий” Combo2.Addltem “Зеленый” Combo3.Addltem “Люкс” СотЬоЗ.Addltem “Стандарт” Combo3.Addltem “Минимум” Listl.Addltem “MusaMotors” Listi.Addltem “Savva” Listl.Addltem “A3P” Listl.Addltem “ЛогоВАЗ” Listl.Addltem “ЛадаИнжениринг” End Sub Private Sub HScrolll_Change() Label4.Caption = Str$(HScrolll.Value * 735.499 / 1000) Labels.Caption = Str$(HScrolll.Value) End Sub Private Sub Listl_Click() If Listl.Listlndex >= 0 Then Command3.Enabled = True Command6.Enabled = True End If End Sub Private Sub Optionl_Click() Frame4.Enabled = False Optioni.Enabled = False Option2.Enabled = False Option3.Enabled = False Textl.Text = Textl.Text + Optioni.Caption Chr$(13) + Chr$(10) Check2.Enabled = True Check4.Enabled = True Frame2.Enabled = True HScrolll.Enabled = True Label4.Enabled = True Labels.Enabled = True Label6.Enabled = True Label7.Enabled = True Labei8.Enabled = True Commands.Enabled = True End Sub Private Sub Option2_Click() Frame4.Enabled = False Optionl. Enabled = False Option2.Enabled = False Option3.Enabled = False Textl.Text = Textl.Text + Option2.Caption + Chr$(13) + Chr$ (10) Check2.Enabled = True Check4.Enabled = True Frame2.Enabled = True HScrolll.Enabled = True Label4.Enabled = True Labels.Enabled = True Label6.Enabled = True Label7.Enabled = True Labels.Enabled = True Commands.Enabled = True End Sub Private Sub Option3_Click() Frame4.Enabled = False Optioni.Enabled = False Option2.Enabled = False Option3.Enabled = False Textl.Text = Textl.Text + Option3.Caption > Chr$(13) + Chr$ (10) Check2.Enabled = True Check4.Enabled = True Frame2.Enabled = True HScrolll.Enabled = True Label4.Enabled = True Ldbel5. Ei-icioled = True Ldnei6.EnDied = True LdDpl7. L.Jt,ied = Tr.Je Lctbel8. Er.dbied = True CoiTimand. £.ndbled = Tru Ei-ici Sub МЕНЮ ПОЛЬЗОВАТЕЛЯ Важным элементом GUI является стандартное меню пользователя. Visual Basic имеет специальное средство для создания меню пользоваюлеи приложениями - Menu Editor (Проектировщик меню). Это срелс-жо нозволяег построить меню соответственно общим принципам рассмо1ренного событпиного управления для форм и элементов управления. Меню пользоваге-ля создается выстраиванием элементов меню в соответствии с необходимой их иерархией с помощью Проектировщика меню. Для вызова проектировщика меню нужно вызвать команду Menu Editor... из меню Tools или щелкнуть кнопку Menu Editor на панели инструментов Главного меню. При этом появится окно Menu Editor. элемешы которою имеюг следующее назначение: · Caption примеияегся для ввода названии элементов списка меню, используемых в диадою (например, Фаил, Edit и т.н.): для создания разделительной черш (разделяет функциональные группы пунктов меню) вместо имени вводтся символ “-“; · Name иснользуегся для ввода имен элементов списка меню, используемых при написании нро1раммы (аналогично свойству Name для форм и элементов управления);
· Enabled - флажок, при установке которого пункт меню доступен;
Рассмотрим использование проектировщика меню на примере разработки простого редактора, который обеспечивает ввод и редактирование строк символов, запись выделенного фрагмента в буфер и всгавку из буфера. Доступ к буферу обмена можно получить через объект Clipboard, для которого определены следующие методы: · SetText записывает копию выделенного текста в буфер обмена;
Разместим на форме (имя - Formi, Caption - Редактор) многострочное текстовое окно (имя - txlEdilBox), размеры которого совпадают с размером формы, для ввода и редактирования текста. Меню редактора включает раскрывающиеся меню: Файл (Новый, Открыть..., Сохранить, Сохранить как.... Выход), Правка (Вырезать, Копировать, Вставить), Справка (О программе). В скобках указаны пункты соответствующих раскрывающихся меню. Это меню создается с использованием Menu Editor. Аналогично имени mnuEditCopy образуются имена остальных пунктов меню, которые используются для записи программы (nmuEditCut, mnuEditPaste, mnuFileExit, mnuHelpAbout, mnuFileNew, mnuFileOpen, mnuFileSave, mnuFileSaveAs, mnu File Exit}. Тексты процедур обработки событий следующие: Sub Form_Resize () txtEditBox.Height = ScaleHeight txtEditBox.Width = ScaleWidth End Sub Sub mnuEditCopy_Click () Clipboard.Clear 'очистить буфер Clipboard.SetText txtEditBox.SeiText 'поместить 'выделенный текст в буфер End Sub Sub mnuEditCut_Click () Clipboard.Clear 'очистить буфер Clipboard.SetText txtEditBox.SeiText 'поместить 'выделенный текст в буфер txtEditBox.SeiText = “” 'удаление выделенного 'текста End Sub Sub mnuEditPaste_Click () txtEditBox.SeiText = Clipboard.GetText() End Sub Sub mnuFileExit_Click () If MsgBox(“Выход?”,1+32,”Подтвердить”)=lThen End End Sub Sub mnuHelpAbout_Click () MsgBox “Мой редактор на Visual Basic”,64,”О программе” • End Sub Sub Form_Unload (Cancel As Integer) Cancel = 1 mnuFileExit_Click End Sub Процедура Form_Resiy (обработка события изменения размера формы) обеспечивает автоматическое изменение размеров текстового окна при изменении размеров формы. Процедура mnuEditCopy_Click (обработка события щелчка мыши по пункту меню “Копировать”) обеспечивает запись выделенного текста в буфер. Используются рассмотренные выше методы для объекта Clipboard и методы для текстового окна (операторы Clipboard. Clear и Clipboard.SetText txtEditBox. SeiText). Во втором операторе txtEditBox. SeiText присваивается выделенный текст. Процедура mnuEditCut_Click (обработка события щелчка мыши по пункту меню “Вырезать”) обеспечивает перед удалением сохранение выделенного текста в буфере. Процедура mnuEditPaste_Click (обработка события щелчка мыши по пункту меню “Вставить”) обеспечивает вставку текста из буфера (в данном случае отсутствие при вставке выделения означает вставку в позицию курсора). Процедура mniiFileExit_Click (обработка события щелчка мыши по пункту меню “Выход”) обеспечивает выход из редактора. Оператор End обеспечивает корректный выход из приложения (закрывает файлы и освобождает память). В процедуре используется функция MsgBox для вывода окна сообщения. Синтаксис ее применения следующий: MsgBox сообщение [, тип окна] [, заголовок окна] где сообщение - текст сообщения; тип окна - это сумма значений, определяющих число и тип кнопок на диалоговом окне, стиль пиктограмм, используемых в окне, и др. спецификации. В таблице приведены некоторые значения аргументов и их описание:
Первая группа значений (0-5) описывает номер и тип кнопок, отображаемых в диалоговом окне; вторая группа (16, 32, 48, 64) описывает стиль пиктограммы (иконки); третья группа (0, 256, 512) определяет кнопки по умолчанию; четвертая группа (0, 4096) определяет выводимые окна сообщения (0 - окно ввода для окончания работы приложения, 4096 - окно ввода для окончания работы системы). В качестве значения аргумента может указываться сумма значений типа по одному из каждой группы. Например, в операторе MsgBox “Удалить?”, 52 значение аргумента 52 является суммой 48 и 4 (48 - вывод пиктограммы с восклицательным знаком, 4 - кнопки “Yes” и “No”). Функция MsgBox возвращает следующие значения:
Эти значения можно использовать для обработки результата работы пользователя с окном MsgBox. Процедура mnuHelpAbout_Click (обработка события щелчка мыши по пункту меню “О программе”) обеспечивает вывод окна сообщения. Процедура Form_Unload (Cancel As Integer) (обработка события щелчка мыши по кнопке “Закрыть” раскрывающегося стандартного меню формы) обеспечивает выход с подтверждением. Закрытие формы не обеспечивает корректного завершения приложения. В этом случае присвоение Cancel =1 предотвращает закрытие формы и обеспечивает корректный выход через процедуру mnuFileExit_Click. Разработанная программа имеет меню пользователя и обеспечивает функции удаления, вставки и копирования при редактировании и выдачу сообщения о программе.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-08-12; просмотров: 236; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.63.131 (0.007 с.) |