Оглавление
- Введение
- Необходимое ПО
- От издательства
- Глава 1. Pocket PC с разных точек зрения
- Внутреннее устройство Pocket PC
- Pocket PC с точки зрения программиста
- Windows CE и Pocket PC
- Инструменты программирования для Pocket PC
- eMbedded Visual Tools 3.0 и Pocket PC 2002 SDK
- eMbedded Visual C++ 4.0 и Pocket PC 2003 SDK
- Visual Studio.NET 2003
- Visual Studio 2005
- Порядок установки
- Глава 2. Общие вопросы программирования для Pocket PC
- Эмулятор
- Описание эмулятора
- Ключи командной строки эмулятора
- Требования к компьютеру
- Установка Microsoft Loopback Adapter
- Ограничения эмулятора
- «Горячие» клавиши эмулятора
- Эмулятор и Platform Manager
- ActiveSync
- Эмулятор и ActiveSync
- CabWiz и создание установочного комплекта
- Ключи командной строки
- Mobile Developer Power Toys
- ActiveSync Remote Display
- CECopy
- Convert_PPC_DAT_to_SP_XML
- Hopper
- JShell
- PPC_Command_Shell
- RAPI_Debug
- RAPI_Start
- TypeIt
- Общие вопросы создания интерфейса пользователя
- Глава 3. Разработка программ для Pocket PC с помощью Microsoft eMbedded Visual Basic 3.0
- Среда разработки eMbedded Visual Basic 3.0
- Настройка панелей инструментов
- Упражнение 3.1. Создание и настройка панели инструментов
- Панель инструментов Standard
- Общие свойства окон дизайнеров
- Использование и настройка палитры компонентов (Toolbox)
- Упражнение 3.2. Настройка палитры компонентов
- Помещение компонентов на форму
- Изменение размеров и выравнивание компонентов
- Упражнение 3.3. Создание простого приложения
- Настройки среды
- Управление проектами. Файлы проекта. Компиляция и запуск программы
- Управление файлами проекта
- Состав и назначение файлов проекта
- Компиляция и запуск программы
- Настройки проекта
- Использование встроенных компонентов eVB
- Окно настройки свойств (Properties Window)
- Типы свойств
- Компонент Form
- Упражнение 3.4
- Упражнение 3.5
- Другие встроенные компоненты
- Использование компонентов ActiveX
- Расположение компонентов ActiveX
- Общие вопросы использования компонентов ActiveX
- Компонент MenuBar
- Упражнение 3.6
- Конец ознакомительного фрагмента
Упражнение 3.6
1. Создать новый проект с формой и сохранить его в папке EnPhrase с именем EnPhrase.ebp.
2. Установить для свойства формы Caption значение Учим английские фразы, а значение свойства Height нужно сделать равным 7050. Такая длинная форма нужна для того, чтобы посмотреть, как работает компонент VScrollBar.
3. Добавить к проекту компонент Frame. Значения его свойств приведены в таблице 3.7.
4. Добавить к проекту три компонента Label. Значения свойств этих компонентов приведены в табл. 3.8.
5. Добавить к проекту четыре компонента CommandButton. Значения свойств этих компонентов приведены в табл. 3.9.
6. Добавить к проекту компонент ListBox. Значения свойств этого компонента приведены в табл. 3.10.
7. В первом приближении дизайн программы завершен. В дизайнере форм он будет выглядеть так, как это показано на рис. 3.28.
Рис. 3.28. Дизайн программы.
8. Чтобы фрейм, который имеет размер больший, чем размер экрана, можно было прокручивать при помощи вертикальной полосы прокрутки, нужно написать обработчик события Change для компонента VScroll. Код этого обработчика приведен в листинге 3.12.
Private Sub VScroll1_Change()
Frame1.Top = -200 – VScroll1.Value
End Sub
Теперь можно запустить проект в эмуляторе и посмотреть, как при помощи полосы вертикального скроллинга происходит прокрутка экрана. Граничные значения свойства Value равны тому значению, на которое надо будет сдвигать фрейм в окне, и поэтому обработчик события получился простым. Начальное значение -200 нужно для того, чтобы край фрейма не отображался на форме и не портил общий внешний вид приложения.
9. Чтобы создать в приложении основное меню, необходимо сначала подключить к приложению соответствующую библиотеку. Для этого надо выполнить команду Project ► Components и установить флажок напротив компонента Microsoft Pocket PC MenuBar Control. Следует также задать настройки для автоматической регистрации компонента на устройстве при помощи команды Project ► Project Properties|Update Components ► Always|Component to Updates ► Project Components.
10. После того как библиотека будет добавлена к проекту, соответствующий значок появится на палитре компонентов, и компонент MenuBar можно будет поместить на форму. Для свойства NewButton нужно установить значение false. Запуск проекта в таком состоянии не покажет никаких изменений. Чтобы меню отобразилось на форме, необходимо настроить и создать объекты, соответствующие тому, что должно отображаться на форме. Это делается программным путем в обработчике события Form_Load().
11. Прежде чем писать обработчик события, нужно разобраться с компонентом MenuBar. Сам компонент представляет собой коллекцию команд меню (объект MenuBarMenu) и кнопок (объекты MenuBarButton), которая создается и отображается на нижней панели экрана Pocket PC. Кроме свойств объекта MenuBar, которые отображены в инспекторе, есть еще свойство Collection, содержащее индексированную коллекцию меню и кнопок, и свойство ImageList, содержащее ссылку на коллекцию изображений, которые будут отображаться на кнопках. События ButtonClick, MenuClick и NewClick предназначены для обработки событий щелчка на кнопках, пунктах меню и кнопки New соответственно.
Добавление компонентов к коллекции производится при помощи методов AddButton и AddMenu объекта Collection. Доступ к элементам коллекции может производиться как по индексу, так и по символьному ключу, который задается для каждого элемента коллекции в момент его создания.
12. Добавить к коду приложения обработчик события Form_Load(). Код обработчика приведен в листинге 3.13. В него добавлены комментарии, которые можно не вводить в код приложения. Они потребуются лишь для удобства рассмотрения этого фрагмента.
Rem 1
Dim mnuFile As MenuBarMenu
Rem 2
Dim mnuSep, mnuClrl, mnuClr2, mnuClr3 As MenuBarButtor
Rem 3
Set mnuFile = MenuBarl.Controls.АсШепиС'Файл", «mnuFile»)
Rem 4
mnuFile.Items.Add 1, «itFont», «Редактирование шрифта»
Rem 5
mnuFile.Items.Item(1). SubItems.Add 1, «itBold», «Полужирный»
mnuFile.Items.Item(1). SubItems.Add 2, «itItal», «Наклонный»
mnuFile.Items.Item(1). SubItems.Add 3, «itSize», «Размер»
Rem 6
mnuFile.Items.Item(1). SubItems.Item(3). SubItems.Add 1, «it8», «* 8»
mnuFile.Items.Item(1). SubItems.Item(3). SubItems.Add 2, «it10», «10»
mnuFile.Items.Item(1). SubItems.Item(3). SubItems.Add 3, «it12», «12»
Rem 7
mnuFile.Items.Add 2, "", ""
mnuFile.Items.Item(2). Style = mbrMenuSeparator
Rem 8
mnuFile.Items.Add 3, «itOpen», «Открыть»
Rem 9
mnuFile.Items.Add 5, "", ""
mnuFile.Items.Item(5). Style = mbrMenuSeparator
Rem 10
mnuFile.Items.Add 6, «itExit», «Завершить работу»
Rem 11
Set mnuSep = MenuBar1.Controls.AddButton(«mnuSep»)
mnuSep.Style = mbrSeparator
Rem 12
Set mnuClr1 = MenuBar1.Controls.AddButton("1")
mnuClr1.Style = mbrButtonGroup
mnuClr1.Caption = " 1»
Set mnuClr2 = MenuBar1.Controls.AddButton("2")
mnuClr2.Style = mbrButtonGroup
mnuClr2.Caption = " 2»
Set mnuClr3 = MenuBar1.Controls.AddButton("3")
mnuClr3.Style = mbrButtonGroup
mnuClr3.Caption = " 3»
Rem 13
Frame1.Top = -200
List1.Clear
End Sub
13. Теперь этот листинг надо детально рассмотреть. В качестве ссылок будут использоваться номера комментариев в тексте.
1) Объявляется переменная типа MenuBarMenu. Переменная одна, значит, на панели команд устройства будет один пункт меню.
Конец ознакомительного фрагмента
Текст предоставлен ООО «ЛитРес».
Прочитайте эту книгу целиком, на ЛитРес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.