Visual Basic .NET для чайников - У. Вонг. Visual Basic .NET для чайников - У. Диалектикамосква СанктПетербург Киев
Скачать 7.1 Mb.
|
Глава Диалоговые окна Кнопки инструментов для создания стандартных диалоговых окон относятся к катего- рии Windows Forms панели Toolbox. Если вы не видите их в данный момент на экра- не, щелкните на кнопке любого инструмента (например, TextBox) и, нажимая кнопку с направленной вниз стрелкой, прокрутите весь список инструментов панели Toolbox, Тест на проверку полученных вами знаний Для чего в диалоговых окнах отображаются 2. Что нужно сделать, чтобы стандартное диалого- а. На тот случай, если за компьютер сел пользователь, который не умеет читать. б. Чтобы привлечь внимание пользователей и сделать визуальный акцент на отображае- мом сообщении. Например, пиктограмма призвана привлечь внимание пользователя к сообщению, к которому он отнестись серьезно. в. Обычно пользователи игнорируют сооб- щения, сопровождаются ярки- ми картинками. Никто не знает для чего. Наверное, тради- ция такая. вое окно (например, Open или Save As) было создано автоматически? а. Написать специальный код По щучьему велению, по моему хо- тению, окно (такое-то) соз- дайся! б. Открыть нужное диалоговое окно и нажать на компьютере кнопку RESET. в. В панели Toolbox дважды щелкнуть на кноп- ке соответствующего (например, OpenFileDialog или SaveFileDialog). г. нужное окно 10 20 раз, у вас это будет получаться почти автоматически. Создание окна OpenFile Диалоговое окно OpenFile позволяет пользователю выорать файл, который должен бьпь открыт. Здесь же могут быть отображены только те файлы, которые удовлетворяют ленным условиям, например имеют расширение ТХТ или Чтобы создать диалоговое окно OpenFile, выполните следующие действия. 1. Откройте форму. 2. На панели Toolbox дважды щелкните на кнопке инструмента Эта кнопка относится к категории Windows Forms. Возможно, чтобы ее увидеть, вам придется прокрутить вниз список элементов данной (рис. Visual Basic отобразит значок созданного диалогового окна (и присвоенное ему стандартное имя, наподобие в специальном окне, рас- положенном в нижней части экрана. После того как диалоговое окно OpenFile будет добавлено в форму, вам придется на- писать код BASIC, который должен открывать данное окно на экране. Вот этот код: O p e n F i l e D i a l o g l — это стандартное имя, которое Visual Basic .NHT присваи- вает диалоговому окну автоматически. Если вы впоследствии присвоите данному окну какое-нибудь иное имя, то нужно будет указать в приведенном коде вместо имени O p e n F i l e D i a l o g l . Если вы хотите определить список файлов, которые должны отображаться в Open- File, то нужно будет воспользоваться специальным приемом, который называют применение фильтра. Фильтр определяет для Visual Basic файлы какого типа нужно отображать (например, только с расширением . ТХТ или . ВАТ). 144 Часть Создание меню 73.5. кнопку прокрутите вниз список инструментов панели Toolbox Фильтр состоит как бы своего названия, которое отображается в списке диалогового окна, и собственно фильтра. Примеры некоторых фильтров и соответствую- щих им названий приведены в табл. Для большей наглядности названия фильтров вклю- чают в обозначения самих фильтров. Так, текстовые файлы обычно имеют расширение . но некоторые из них имеют и другое . ASC. Таким образом, название T e x t F i l e s ( говорит о том, что в диалоговом окне будут отображены только те текстовые файлы, которые имеют расшире- ние . ТХТ (те текстовые файлы, которые имеют расширение . ASC, отображаться не будут). Таблица Фильтры и их названия Название Фильтр ) (Все файлы} F± B a t c h F i l e s (Выполняемые файлы) EXE Вот определяются фильтры и их названия. 1. Откройте форму, которая содержит диалоговое окно OpenFile. 2. Щелкните на значке O p e n F i l e D i a l o g , который отображается в окне, рас- положенном под окном формы. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Properties в окне Solution Explorer щелкните на кнопке Properties Window или щелкните кнопкой мыши в окне формы и выберите команду Properties. Глава Диалоговые окна 145 4. Щелкните на свойстве Filter (Фильтр) категории Misc (Разное) и наберите фильтр, который хотите использовать. Фильтр состоит из короткого описания файлов, которые будут отобраны: T e x t f i l e s ( * . t x t ) | * . t x t В этом примере текст, набранный до вертикальной черты, будет отображаться в диалого- вом окне в списке Files type (Тип файлов). А текст, набранный после вертикальной черты, является фильтром, в соответствии с которым будут отбираться файлы для отображения. Для того чтобы набрать вертикальную черту, необходимо нажать клавишу а затем — клавишу, на которой изображена косая черта ( \ ) . Вы можете создать и несколько фильтров сразу: T e x t f i l e s ( * . t x t ) | A l l F i l e s ( * . * ) [ * . * При этом не забывайте каждый следующий фильтр отделять от предыдущего вертикаль- ной чертой. Если вы создаете несколько фильтров одновременно, вам нужно сообщить Visual Basic какой из них должен отображаться сразу после открытия окна OpenFile, Для этого свойству Filterlndex (Номер фильтра) нужно присвоить определенное числовое значение. Когда вы создаете несколько фильтров, первому из них присваивается номер 1, второ- му — номер 2 и т.д. Таким образом, в предыдущем примере, чтобы при открытии диалогово- го окна сразу отображался фильтр T e x t ( . t x t ) , свойству Filterlndex нужно при- своить значение 1. Итак, чтобы определить, какой фильтр должен отображаться в диалоговом окне первым, сделайте следующее. 1. Откройте форму, для которой создано диалоговое окно OpenFile. 2. Щелкните на значке OpenFileDialog в окне, расположенном в нижней части экрана. 3. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Properties Window, в окне Solution Explorer щелкните на кнопке Properties Window или щелкните правой кнопкой мыши в окне формы и выберите команду Properties. 4. Щелкните на свойстве Filterlndex категории Misc (Разное) и наберите номер который должен отображаться сразу при открытии диалогового окна. В следующий раз, когда вы запустите свою программу и откроете диалоговое ок- но OpenFile, сразу же будет включен указанный вами фильтр. Как определить, какой файл выбран пользователем в диалоговом окне OpenFile После того как пользователь определил в диалоговом окне OpenFile, какой файл он хочет открыть, и щелкнул на кнопке программа должна будет как-то узнать, а что именно вы- брал пользователь. Путь к указанному пользователем файлу сохраняется как значение свойст- ва Filename диалогового окна OpenFile. Поэтому вам нужно будет написать кол, который создает новую переменную и присваивает ей значение свойства Filename: Dim s t r W h a t F i l e As S t r i n g s t r W h a t F i l e = Часть III. Создание меню В свойстве Filename запоминается как само название выбранного файла, так и полный путь к нему (например, t x t ) . Если пользователь закрыл диалоговое окно щелчком на кнопке Cancel, свойству Filename присваивается значение "" (пустая строка). Создание окна SaveFile Диалоговое окно SaveFile выглядит почти так же, как и окно OpenFile. Разве что заго- ловки у этих окон разные. (В заголовке диалогового окна OpenFile отображается слово Open (Открыть), а в заголовке окна SaveFile отображаются слова Save As (Сохранить как).) Чтобы создать диалоговое окно SaveFile, сделайте следующее. 1. Откройте форму. 2. На панели Toolbox дважды щелкните на кнопке инструмента SaveFileDialog. (Эта кнопка расположена в категории Windows Forms. Воз- можно, чтобы ее увидеть, вам придется прокрутить вниз список элементов этой категории.) Visual Basic отобразит значок созданного диалогового окна и его название (что- то наподобие SaveFileDialogl) в окне, расположенном в нижней части экрана. После того как окно создано, для его отображения следует набрать следующий код: Как и в окне OpenFile, в окне SaveFile вы можете использовать фильтр для отбо- ра тех файлов, которые могут быть здесь показаны. Чтобы получить такую воз- можность, нужно изменить значение свойства Filter диалогового окна SaveFile. Как это сделать, рассказывается выше, в разделе "Создание окна OpenFile". Как определить, какой файл выбран пользователем в окне SaveFile Как и в случае с окном OpenFile, название файла, который выбран в окне SaveFile, со- храняется в качестве значения свойства Filename. Чтобы программа определила, какой именно выбор сделал пользователь, нужно создать новую переменную и присвоить ей значе- ние свойства s t r W h a t F i l e As S t r i n g = Диалоговое окно SaveFile само себе файлы не сохраняет. Чтобы сохранить файл, вам нужно будет написать дополнительный код BASIC, который отдаст ком- пьютеру распоряжение физически сохранить файл на диске. Создание окна Color Диалоговое окно Color (Цвет) позволяет пользователю выбрать один из стандартных цве- тов или же определить и задать собственный цвет (рис. Вот что нужно сделать для создания такого диалогового окна. 1. Откройте форму. 2. На панели Toolbox дважды на кнопке инструмента (Эта кнопка расположена в категории Windows Forms. Возможно, чтобы ее уви- деть, вам нужно будет прокрутить вниз список инструментов этой категории.) Глава 13. Диалоговые окна 147 Visual Basic отобразит значок созданного диалогового окна и его название (что-то наподобие ColorDialogl) в окне, расположенном в нижней части экрана. После того как диалоговое окно создано, для его отображения нужно набрать следующий код: r i f m m m г ггггт • • • •• • • r г Define Соки» ] OK j Cancel j Рис. 13.6. Диалоговое окно Color позво- ляет пользователю выбрать нужный цвет Как определить, какой цвет был выбран пользователем Информация о сохраняется как значение свойства Color диалогового окна Color. Это значение можно использовать затем для определения цвета отдельных объек- тов (ForeColor) или их фона Например, фоновый цвет для объекта B u t t o n l устанавливается следующим кодом: = Создание окна Font Диалоговое окно Font (Шрифт) позволяет пользователям определить шрифт, размер и на- чертание набираемого ими текста 13.7). Каждым раз, когда пользователь выбирает ка- кую-то новую опцию, в диалоговом окне отображается пример того, как будет выглядеть текст при такой установке. Чтобы создать диалоговое окно Font, выполните такие действия. Откройте форму. 2. На Toolbox дважды щелкните на кнопке инструмента FontDialog. (Эта кнопка относится к категории Windows Forms. Возможно, чтобы ее увидеть, вам придется прокрутить список инструментов данной категории.) Visual Basic отобразит значок созданного диалогового окна и его название (что-то наподобие в окне, расположенном в нижней части экрана. После того как диалоговое окно Font для его отображения нужно набрать сле- дующий код: 148 Часть III. Создание меню Font г г sets J style Bold |AaBbYyZ Z i Cancel | 13.7. В диалоговом окне Font можно определить шрифт, начертание и размер текста Как определить, какие опции были выбраны пользователем в окне Font Когда диалоговое окно открыто, пользователь может выбрать шрифт текста, его размер и еще несколько дополнительных установок. Вся информация о заданных пользовате- лем установках сохраняется в виде значений свойства Font (категория Misc) диалогового ок- на Font. Если вы на знаке отображаемом рядом с названием этого свойства в окне Properties, Visual Basic откроет список дополнительных свойств, хранящих всю информацию о пользователя (табл. 13.4). Таблица 13.4. Свойства, запоминающие установки, сделанные пользователем в диалоговом окне Font Значение Name (Имя) Size (Размер) Bold (Полужирный) (Курсив) Strikeout (Зачеркнутый) Underline (Подчеркнутый) Название выбранного шрифта (например, New Число, обозначающее размер шрифта (например, 3 или 12) Значение False или True Значение False или Значение False или True Значение False или True Чтобы программа знала, какую опцию выбрал пользователь, нужно написать код Выглядеть он должен приблизительно так: Dim As S t r i n g = Для получения данных об установках, сделанных пользователем в диалоговом окне Font, вначале нужно указать название диалогового окна (в нашем примере это далее название свойства Font, а затем название того свойства, данные о котором нужно получить (например, или Bold). Глава Диалоговые окна 149 Создание окна Print Диалоговое окно Print (Печать) позволяет пользователям выбрать принтер, определить диапазон печати и количество требуемых копий. Окно Print показано на рис. Чтобы создать такое диалоговое окно, нужно сделать следующее. Откройте форму. 2. На панели Toolbox дважды щелкните на кнопке инструмента PrintDialog. (Эта кнопка расположена в категории Windows Forms. Возможно, чтобы ее уви- деть, вам придется прокрутить вниз список инструментов данной категории.) Visual Basic отобразит значок созданного диалогового окна и его название (что-то наподобие P r i n t D i a l o g l ) в окне, расположенном в нижней части экрана. 3. На панели Toolbox дважды на кнопке инструмента (Эта кнопка расположена в категории Windows Forms. Возможно, чтобы ее уви- деть, вам нужно будет прокрутить вниз список инструментов данной категории.) Visual Basic отобразит в окне, расположенном в нижней части экрана, зна- чок печатаемого документа и его название (что-то наподобие Обратите внимание: если вы назовете печатаемый документ каким-нибудь своим именем, это же имя нужно будет указать и на шаге 7. 4. На панели Toolbox дважды щелкните на кнопке инструмента Значок этого диалогового окна отобразится в окне, расположенном в нижней час- ти экрана. 5. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Window, в окне Solution Explorer щелкните на кнопке Properties Window или щелкните правой кнопкой мыши в окне формы и выберите команду Properties. 6. Щелкните на свойстве Document (Документ) категории Misc (Разное). Рядом появится кнопка с направленной вниз стрелкой. 7. Щелкните на кнопке со стрелкой и выберите имя печатаемого документа (в нашем случае это Status: - С - - - _ ! j Caned 13.8. В этом диалоговом окне можно указать стра- ницы, которые должны быть распечатаны Часть Создание меню объект имеет свойство (Имя документа), к категории Misc. По значению данного свойства диалоговое окно Print оп- ределяет, какой документ должен быть выведен на печать. После того как объекты и PrintDocument созданы, в текст программы нужно добавить код, посредством которого диалоговое окно Print будет отображаться на экране: Диалоговое окно Print само себе ничего не печатает, оно лишь может принять установки от пользователя. Вам же еще нужно будет написать коды BASIC, кото- рые должны реально выводить что-то на печать. Создание окна PageSetup В диалоговом окне PageSetup (Параметры страницы) пользователи могут определить размеры печатаемых страниц и величину их полей (рис. 13.9). Pane Setup Portia* Landscape Рис. 13.9. В диалоговом окне PageSetup мож- но указать размер выводимых на печать страниц Вот как создается диалоговое окно PageSetup. Откройте форму. 2. На панели Toolbox дважды щелкните на кнопке инструмента PrintDocument. (Эта кнопка расположена в категории Windows Forms. Возможно, чтобы ее увидеть, вам придется прокрутить вниз список инструментов категории.) Visual Basic отобразит в окне, расположенном в нижней части экрана, значок печатаемого документа и его название (что-то наподобие Об- ратите внимание: вы назовете печатаемый документ каким-нибудь своим име- нем, же имя нужно будет указать и на шаге 6. 3. На панели Toolbox дважды щелкните на кнопке инструмента PageSetupDialog. Значок этого диалогового окна отобразится в окне, расположенном в нижней час- ти экрана. Глава Диалоговые окна 151 4. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Window, в окне Solution Explorer щелкните на кнопке Properties Window или щелкните правой кнопкой мыши в окне формы и выберите команду Properties. 5. Щелкните на свойстве Document (Документ) категории Misc (Разное). Рядом с названием свойства появится кнопка с направленной вниз стрелкой. 6. Щелкните на кнопке со стрелкой и выберите имя печатаемого документа (в нашем случае это Объект имеет (Имя документа), относя- щееся к категории Misc, по значению которого диалоговое окно PageSetup опре- деляет, размеры и поля страниц какого документа устанавливаются Вам нужно будет написать код BASIC для определения имени этого документа, а также коды BASIC для изменения (с учетом установок, сделанных пользователем) параметров печатаемых страниц. Добавив к форме объект PrintDocument и диалоговое окно PageSetup, вы сможете ото- бразить на экране окно PageSetup, набрав в тексте программы такой код BASIC: Часть III. Создание меню Часть Основы создания кодов Ура-а! начинаются рассказывающие о том, как создать собственные коды BASIC и таким образом заставить ком- пьютер делать то, что вы так давно от него ждете. До сих пор нами рассматривались лишь приемы построения пользовательского ин- терфейса (и написания некоторых сопутствующих ему кодов BASIC). Но каждому понятно, что просто красиво выглядеть недос- таточно (разве что только в том случае, если вы пытаетесь выско- чить замуж за старенького жить которому оста- лось от силы месяцев). Представьте, что созданный вами ин- терфейс будет не только радовать но и начнет адекватно реа- гировать все ваши действия. Даже если вам кажется, что освоение кодов BASIC — занятие не из легких, очень скоро вы сможете убедиться в обратном. Сами по себе коды BASIC — это всего лишь наборы пошаговых инст- рукций для точно указывающих ему, что нужно де- лать. Поэтому приготовьтесь начать отдавать компьютеру указа- ния (другими писать коды BASIC), и вы увидите, что процесс программирования может быть простым и приятным. Более того, он войдет в привычку, как рисование пользователь- ских интерфейсов или как периодические в любимую компьютерную игру. Глава Написание процедур обработки событий Использование редактора кодов Создание процедур обработки событий > Просмотр процедур обработки событий юбое действие, совершаемое пользователем в отношении компьютера, будь то щел- чок кнопкой мыши, нажатие клавиши или набор текста какого-либо послания на клавиатуре, называется событием. Как только событие происходит, Visual Basic начи- нает искать код BASIC, который бы объяснил компьютеру, как он должен на это реагировать. Коды BASIC, содержащие инструкции на тот случай, если наступит то или иное событие, на- зываются процедурами обработки событий. Любая программа Visual Basic может содержать в себе тысячи процедур обработки событий. Однако если вы создаете такую программу, то это значит, что либо программа бу- дет невероятно сложной и огромной, либо программист из вас никудышный. Сколько бы в программе ни было процедур обработки событий, возникает вопрос: а как Visual Basic определит, какую процедуру в какой момент нужно использовать? Ответ на этот вопрос прост. Любое событие совершается в отношении какого-нибудь элемента пользовательского интерфейса. Например, пользователь обычно щелкает кнопкой мыши только тогда, когда курсор наведен на какой-то объект интерфейса (на кнопку, тексто- вое поле или на команду меню). Каждый объект может иметь одну или несколько процедур обработки событий, и каждая процедура соответствует какому-то определенному событию (например, щелчку кнопкой мыши или нажатию клавиши). с Редактор кодов — это окно, где вы можете набирать коды BASIC, благодаря которым ва- ша программа начнет делать что-то полезное. Вот как открывается редактор кодов. 1. Выберите команду Explorer или нажмите комбинацию кла- виш На экране появится окно Solution Explorer. 2. Щелкните в окне формы и выберите команду нажмите клави- шу Visual Basic откроет редактор кодов для выбранной вами формы. Если вы хотите написать коды и сохранить их в файле, который не относится к формам, на шаге 2 нужно щелкнуть на имени этого файла. |