Visual Basic .NET для чайников - У. Вонг. Visual Basic .NET для чайников - У. Диалектикамосква СанктПетербург Киев
Скачать 7.1 Mb.
|
Глава Разработка раскрывающихся меню Разделительные линии Menus File Edit Tools Help As Preview Jam Printer Разделительные линии облег- чают пользователю поиск нужных команд Тест на проверку полученных вами знаний б. 2. Как можно создать раскрывающееся меню для программ Visual а. Необходимо дважды щелкнуть в панели Toolbox на кнопке Чтобы начать создавать раскрывающиеся меню, нужно пройти 4-годичный курс обуче- ния языкам C++ и Java. Нужно нарисовать окне формы меню и по- искать на панели инструментов кнопку Рас- крыть/Закрыть. А что, Visual Basic действительно может создавать раскрывающиеся меню? так полезны раскрывающиеся меню? а. Они создают у пользователей иллюзию го, данная программа очень серьезная. б. С их помощью можно разбить группы и компактно разместить команды, полняющие подобные действия, что де- лает использование программы намного более удобным. в. Тем, что а них всегда можно найти ко- манду Help и команду Exit. г. Если они полезные, почему люди до сих пор должны изучать 500- "Руководства пользователей"? Назначение комбинаций клавиш Наиболее часто используемым командам можно назначить комбинации клавиш, которые будут предоставлять пользователям возможность быстрого доступа к этим командам без не- обходимости поиска таковых во всех раскрывающихся меню. Например, команде Save (Сохранить) обычно назначается комбинация клавиш (Копировать) — комбинация и т.д. Некоторые из команд, которым назначены ком- бинации клавиш, показаны на рис. Назначенные командам комбинации клавиш отображаются в раскрывающихся меню ря- дом с этими командами. Благодаря этому пользователи могут достаточно быстро запомнить комбинации клавиш, соответствующие командам, которыми они чаще всего пользуются. Чтобы назначить команде меню комбинацию клавиш, вы должны выполнить такие действия. 1. Откройте форму, раскрывающиеся меню которой вы хотите отредактировать. 2. Щелкните на заголовке меню, в котором содержится нужная команда. Visual Basic откроет данное меню. 126 Часть Создание меню Nuclear power plant meltdown poisoning Ozone layer destruction Комбинации клавиш позволяют получить быст- рый доступ к наиболее часто используемым командам 3. Щелкните на команде, которой вы хотите назначить комбинацию клавиш. 4. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Window, в окне Solution Explorer щелкните на кнопке Properties Window или щелкните правой кнопкой мыши в окне формы и выберите команду Properties. 5. Щелкните на свойстве Shortcut (Комбинация клавиш), которое расположено в категории (Разное). Рядом с ним появится кнопка с направленной вниз стрелкой. 6. Щелкните на кнопке со стрелкой. Откроется выпадающий список, в котором вы увидите все возможные комбина- ции клавиш (рис. Рис. Выберите для команды подходящую комбинацию клавиш 7. Щелкните на комбинации клавиш, которую вы хотели бы назначить данной команде. Постарайтесь подобрать такую комбинацию клавиш, которая как-то ассоцииро- валась бы с командой или с ее названием (например, Visual Basic не позволит вам назначить одну и ту же комбинацию клавиш разным командам. Если вы попытаетесь это сделать, на экран будет выведено сообщение об ошибке. Когда ваша программа будет запущена, указанные комбинации клавиш будут отображать- ся в напротив соответствующих им команд. Но пока вы не напишете для команд меню коды BASIC, объясняющие программе, что нужно делать, при выборе пользователем той или иной команды, нажатие комбинаций клавиш ни к чему не приведет. Глава раскрывающихся меню 127 назначите свойству ShowShortcut (Показывать комбинации клавиш), от- носящемуся к категории Misc, значение F a l s e , комбинации клавиш в меню ото- бражаться не будут. Отображение флажков рядом с командами меню Флажок, отображаемый рядом с командой меню, визуально демонстрирует тот факт, что эта команда на данный момент уже выбрана. Флажки могут отображаться рядом только с командами меню, но никак не с заго- ловками меню. Visual Basic может отображать флажки двух видов: обычные и флажки- переключатели, которые выглядят как большие круглые точки. того чтобы рядом с командой меню отображался флажок, необходимо сделать следующее. 1. Откройте форму, содержащую меню, которые нужно отредактировать. 2. Щелкните на заголовке меню, к командам которого нужно добавить флажки. Visual Basic откроет нужное меню. 3. Щелкните на команде, рядом с которой должен отображаться флажок. 4. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Window, в окне Solution Explorer щелкните на кнопке Properties Window или правой кнопкой мыши в окне формы и выберите команду Properties. 5. Щелкните на свойстве Checked (Проверка) категории Misc (Разное). Рядом с ним появится кнопка с направленной вниз стрелкой. 6. Щелкните на кнопке со стрелкой и выберите значение True. Теперь при каждом запуске вашей программы в раскрывающемся меню рядом с командой будет отображаться флажок. А вот что нужно сделать, чтобы рядом с командой меню отображался флажок- переключатель. 1. Откройте форму, содержащую меню, которые нужно отредактировать. 2. Щелкните на заголовке меню, к командам которого нужно добавить флажки. Visual Basic откроет раскрывающееся меню. 3. Щелкните на команде, рядом с которой должен отображаться флажок- переключатель. 4. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Properties Window, в окне Solution Explorer щелкните на кнопке Properties Window или щелкните правой кнопкой мыши в окне формы и выберите команду Properties. 5. Щелкните на свойстве Checked (Проверка), которое относится к категории Misc (Разное). Рядом с ним появится кнопка с направленной вниз стрелкой. 6. Щелкните на кнопке со стрелкой и выберите значение True. 7. Щелкните на свойстве (Флажок-переключатель), которое также относится к категории Misc (Разное). Рядом с ним появится кнопка с направленной вниз стрелкой. Часть Создание меню Обратите внимание, что свойство Checked отвечает за отображение флажка, а свойство RadioCheck — за отображение флажка-переключателя. 8. Щелкните на кнопке со стрелкой и выберите значение True. Теперь при каждом последующем запуске программы в раскрывающемся меню рядом с командой будет отображаться Если вы что рядом с какой-то командой меню должен отображаться флажок, то, естественно, захотите, чтобы при наступлении определенных событий этот флажок исчезал. Что для этого нужно? Конечно же, написать соответствующие коды Чтобы флажок рядом с командой меню не отображался, нужно свойству Checked (или RadioCheck) присвоить значение False. Приведенная ниже команда удаляет изображение флажка, соответствующего 12: = F a l s e Чтобы отобразить флажок, используя коды BASIC, нужно написать команды, которые присваивали бы свойству Checked (или RadioCheck) значение True. Ниже приведен код, который включает отображение рядом с командой, именуемой v e t i c a : Checked = True mnuFont = True Если вы хотите отобразить рядом с командой меню флажок-переключатель, нужно присвоить значение True одновременно двум свойствам, Checked и RadioCheck. Чтобы отобразить обычный флажок, достаточно присвоить значение True только свойству Checked. Выделение серым команд меню Иногда попытка использовать некоторые команды не приводит к положительному ре- зультату. Например, пока вы не выделите какую-либо текстовую информацию, нет смысла использоЕать команду Cut (Вырезать) или (Копировать). Чтобы предостеречь пользова- телей от попытки применить недоступные на данный момент команды, можно выделить на- звания таковых серым (название команды в раскрывающемся меню будет отображаться се- рым цветом). И хотя сама команда по-прежнему будет находиться в меню, пользователь бу- дет знать, что задействовать ее невозможно. Чтобы выделить команду серым, вы должны выполнить такие действия. 1. Откройте форму, содержащую меню, которые нужно отредактировать. 2. Щелкните на заголовке меню, где расположена команда, которую нужно выделить серым. Visual Basic активизирует раскрывающееся меню. 3. Щелкните на команде, которую вы хотите выделить серым. 4. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Properties Window, в окне Solution Explorer щелкните на кнопке Properties Window или щелкните правой кнопкой мыши в окне формы и выберите команду Properties. 5. Щелкните на свойстве Enabled (Доступная) категории (Разное). Рядом с ним появится кнопка с направленной вниз стрелкой. (>. Щелкните на кнопке со стрелкой и выберите значение F a l s e . При каждом следующем запуске программы эта команда будет выделяться серым. Глава Разработка раскрывающихся меню Если команда выделена серым, то, естественно, в определенные моменты времени выде- ление с нее должно сниматься, т.е. команда должна снова становиться доступной. А для этого вам опять понадобится написать код Чтобы снять с команды выделение серым, нуж- но ее свойству Enabled присвоить значение Ниже приведен код, который снимает вы- деление с команды, названой именем = True Чтобы команда стала недоступной в процессе выполнения программы, также нужно напи- сать код BASIC, присваивающий ее свойству Enabled значение F a l s e . Вот код, который де- лает недоступной (выделяет ее серым) команду = F a l s e Скрытие команд меню Вы можете не только выделять команды меню серым, но и вовсе убирать их с экрана на какое-то время. Например, некоторые программы не отображают никаких заголовков меню, за исключением меню File и Help, до тех пор, пока пользователь не откроет или не создаст новый файл. (В самом деле, зачем отображать меню Edit, если редактировать пока нечего?) При необходимости удалить элемент меню с экрана сделайте следующее. 1. Откройте форму, содержащую меню, которые нужно отредактировать. 2. Щелкните на заголовке меню, где расположена команда, отображение кото- рой нужно отменить. Visual Basic активизирует раскрывающееся меню. 3. Щелкните на команде, которую нужно убрать с экрана. 4. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Properties Window, в окне Solution Explorer на кнопке Properties Window или щелкните правой кнопкой мыши в окне формы и выберите команду Properties. 5. Щелкните на свойстве Visible (Видимый), относящемся к категории (Разное). Рядом с ним появится кнопка с направленной вниз стрелкой. 6. Щелкните на кнопке со стрелкой и выберите значение F a l s e . В следующий раз, когда вы запустите программу, этой команды в меню вы не найдете. Если команда в определенный момент времени на экране отсутствует, то наверняка на- ступит время, когда ее нужно будет отобразить снова и сделать доступной. Для этого вам опять-таки понадобится написать код Чтобы отобразить команду на экране, нужно ее свойству Visible присвоить значение True. Ниже приведен код, который возвращает на эк- ран заголовок меню с именем = True Чтобы убрать команду с экрана в процессе выполнения программы, также нужно написать код BASIC, присваивающий свойству Visible значение F a l s e . Ниже приведен код, который отменяет отображение заголовка меню, именуемого V i s i b l e = F a l s e В заключение еще раз напомним вам, что раскрывающиеся меню призваны облегчить ра- боту с программой и придать ей более профессиональный вид. Поэтому не жалейте времени и усилий на создание качественного пользовательского интерфейса, задействуйте для этого все доступные и пользователи непременно скажут вам спасибо. Часть Создание меню Глава Подменю, расширяемые меню и выпадающие меню > Создание подменю Создание динамически расширяемых меню > Создание выпадающих меню команд, которые можно разместить в раскрывающемся меню, всегда ог- раничивается высотой экрана. А что делать, если вы создаете суперпрограмму, в ко- торой столько команд, что всех раскрывающихся меню просто не хватает для их размеще- ния? По-видимому, вам придется заняться созданием подменю (или еще раз подумать, нужно ли создавать такую огромную программу). Создание это одно раскрывающееся меню, вложенное в другое раскрывающееся меню. Таким образом можно создавать целую иерархию команд, размещая отдельные из них на раз- ных уровнях вложенности. Например, в интерфейсе многих программ можно встретить меню Format (Формат), внутри которого расположены такие команды, как TypeStyle (Начертание), (Шрифт) и Size (Размер). Если вы щелкнете на команде на экране отобразится подменю со списком всех доступных для использования шрифтов. Пример вложенных под- меню приведен на рис. 12.1. Visual Basic позволяет создавать системы подменю, включающие до четырех уров- ней вложенности (рис. 12.1). Хотя использование такого количества вложенных подменю может показаться вам заманчивым, большинство программ применяют только один уровень вложенности. Опыт показывает, что обнаружить команду, расположенную на третьем или четвертом уровне вложенности, очень непросто. Находящийся рядом с элементом меню повернутый в виде стрелки, свиде- тельствует о том, что за этим элементом скрывается подменю. Когда вы создаете подменю, Visual Basic добавляет отображение такой стрелки автоматически. Создается подменю следующим образом. 1. Откройте форму, содержащую меню, к которому вы хотите добавить подменю. 2. Щелкните на заголовке раскрывающегося меню. Visual Basic отобразит меню на экране. 3. Щелкните на команде, за которой должно раскрываться подменю. Справа от выбранной команды Visual Basic отобразит поле (Наберите здесь). Глава Подменю, расширяемые меню и выпадающие меню 4. Щелкните в поле и наберите название первой команды подменю. Visual Basic отобразит поля справа и снизу под только что соз- данной командой подменю. 5. Повторяйте шаг 4 до тех пор, пока не наберете названия всех команд, кото- рые должны отображаться в подменю. Если вы щелкнете в поле расположенном справа от новой команды подменю, вы создадите новое подменю. tfrat wrote all my ays Produce never existed at Вы можете спрятать команду за несколькими уровнями подменю Чем больше вы создадите подменю и чем сложнее будет их структура, тем труднее будет пользователям находить нужные команды и тем неудобнее будет ваша про- грамма в использовании. Вместо многоуровневой системы подменю многие программы используют для об- щения с пользователем диалоговые окна. (Об их создании подробно рассказывает- ся в главе 13.) Диалоговые окна позволяют за один раз выбрать сразу несколько команд и установок, что значительно удобнее, чем блуждание по разным подменю в поиске лишь одной команды или установки. меню выполнения Иногда возникают ситуации, когда команду меню нужно изменить в процессе выполнения программы. Так, в интерфейсе большинства программ имеется команда Undo (Отменить), которая почти всегда изменяется. После того, как пользователь выбирает команду та- ковая исчезает с экрана, а на ее месте появляется команда Redo (Повторить). Чтобы команда меню изменялась в процессе выполнения программы, нужно написать соответ- ствующий код BASIC, изменяющий для этой команды значение свойства Text (Текст). Приведен- ный ниже код изменяет для название на экране Undo на Redo: = " R e d o " Следующий код возвращает на экран название Undo: = " U n d o " Часть III. Создание меню меню В интерфейсе большинства программ в меню File отображается список из четырех или пяти открываемых файлов 12.2). Другой случай: если вы открываете в од- ной и той же программе несколько окон, в меню Window можно увидеть список файлов, от- крытых ни данный момент. Такие меню называются динамически расширяемыми, и используются они для быстрого доступа к определенным файлам в процессе работы программы. Visual Basic предлагает два создания динамически расширяемых меню: * в процессе разработки интерфейса программы; в процессе выполнения программы. j Browse... Import Software Products Conversion... Preferences 1 Photo of a riead picture of Secret map to Jimmy body 12.2. Динамически расширяемое меню File, которое вы можете увидеть в программе Paint Shop Pro Создание расширяемых меню в режиме конструктора Если вы наперед знаете, что в процессе работы программы в раскрывающееся меню должно быть добавлено несколько новых пунктов, то можете заранее создать некоторое ко- личество пустых строк в и позднее, используя коды BASIC, заполнить их конкретными элементами. Чтобы сделать это, выполните следующие действия. 1. Откройте форму, меню которой должно динамически расширяться. 2. Щелкните заголовке раскрывающегося меню. В нижней части открывшегося меню будет отображаться поле 3. Щелкните в поле наберите любой символ и нажмите клавишу возврата, чтобы стереть его. Таким образом вы создадите в раскрывающемся меню пустую строку. 4. Откройте окно Properties. Чтобы сделать это, нажмите клавишу Window, окне Solution Explorer щелкните на кнопке Properties Window или правой кнопкой мыши в окне формы и выберите команду Properties. |