К сожалению, если мы выберем из списка событие, к примеру KeyDown, то получим сообщение об ошибке Method \'StatusBar1_ParentChanged\' cannot handle Event \'KeyDown\' because they do not have the same signature. Это связано с тем, что в обработчики разных событий передаются разные аргументы и сигнатура не может быть одинакова для всех обработчиков. В этом случае надо щелчком мыши в редакторе кода перевести текстовый курсор в слово KeyDown, и правой кнопкой мыши вызвать контекстное меню. Из контекстного меню необходимо выбрать команду Go To Definition, при помощи которой курсор будет перенесен в место определения данного события в окне Object Browser (рис. 6.9).
Из нижней части окна, в которой описано событие и его сигнатура, можно легко скопировать аргументы и затем перенести их в код программы, заменив ими существующие аргументы процедуры обработки события. После этого программа будет нормально скомпилирована и запущена. Видимые и невидимые элементы управления
Большинство элементов управления во время дизайна формы выглядят так же, как и во время выполнения программы. Разработчик помещает их на форму и позиционирует при помощи мыши. При помощи мыши разработчик может изменять их размер. Но есть несколько элементов управления, которые или невидимы во время выполнения программы, или поведение и отображение их во время выполнения отличается от поведения и отображения во время дизайна. К ним относятся: MainMenu, Timer, ImageList, ContextMenu, OpenFileDialog, SaveFileDialog и InputPanel. При добавлении к проекту эти компоненты не помещаются на форму, а располагаются на специальной области в нижней части дизайнера форм (рис. 6.10).
Упражнение 6.2
1. Создать новый проект Smart Device Application и сохранить его с именем MyTime. Тип приложения должен быть Windows Application, а платформа – Pocket PC, как и в предыдущем упражнении. В среде будет создан новый проект.
2. В графическом редакторе нужно создать несколько рисунков и сохранить их в каталоге программы с именами, указанными в табл. 6.4.
Таблица 6.4. Рисунки для приложения
3. Выделить форму в дизайнере форм щелчком мыши по заголовку. В правой нижней части рабочего стола Visual Studio нужно найти окно инспектора свойств Properties, предназначенное для редактирования свойств выделенного объекта. Если щелчок на форме не выделил ее, то можно просто выбрать имя формы Form1 из выпадающего списка в верхней части окна Properties. В инспекторе свойств нужно найти свойство Text и изменить его значение, введя строку Мое время. Соответствующая надпись должна появиться в заголовке формы.
4. Прежде чем продолжать заниматься дизайном и кодированием проекта, необходимо настроить некоторые его параметры. Из пункта меню Project следует выбрать команду MyTime Properties. Затем нужно выделить папку Common Properties и выбрать в этой папке группу настроек Device. В правой части окна в строку Output file folder следует ввести значение \Windows\Start Menu, а затем нажать кнопку OK. Таким образом указывается папка, в которую на эмуляторе или устройстве будет осуществляться поставка приложения.
5. На следующем этапе создается пиктограмма приложения. Для этого в том же окне настроек параметров проекта и в той же папке Common Properties нужно выбрать группу настроек Build. С правой стороны в поле Application Icon нужно нажать кнопку редактирования и загрузить графический файл с полным именем C: \Program Files\Microsoft Visual Studio.NET 2003\Common7\Graphics\icons\Misc\ CLOCK06.ICO. Загруженный значок будет скопирован в каталог программы. В окне Solution Explorer нужно выбрать этот файл, а затем в окне Properties установить для него значение свойства Build Action равным Embedded Resource. Это делается для того, чтобы значок был вкомпилирован в код программы, а не поставлялся в виде отдельного файла.
6. На форме нужно разместить элементы управления и установить при помощи инспектора свойств значения их свойств согласно табл. 6.5.
Таблица 6.5. Элементы управления основной формы
В результате выполнения этих действий форма должна обрести вид, показанный на рис. 6.11.
Рис. 6.11. Форма с размещенными элементами управления.