if ((e.KeyCode == System.Windows.Forms.Keys.Up)) {
// Up
this.AutoScrollPosition =
new Point(-this.AutoScrollPosition.X, -this.AutoScrollPosition.Y - 16);
}
if ((e.KeyCode == System.Windows.Forms.Keys.Down)) {
// Down
this.AutoScrollPosition =
new Point(-this.AutoScrollPosition.X, -this.AutoScrollPosition.Y + 16);
}
if ((e.KeyCode == System.Windows.Forms.Keys.Left)) {
// Left
this.AutoScrollPosition =
new Point(-this.AutoScrollPosition.X - 16, -this.AutoScrollPosition.Y);
}
if ((e.KeyCode == System.Windows.Forms.Keys.Right)) {
// Right
this.AutoScrollPosition =
new Point(-this.AutoScrollPosition.X + 16, -this.AutoScrollPosition.Y);
}
}
После запуска приложения можно нажимать на клавиши навигации. Написанный код позволит прокручивать форму в выбранном направлении. Но здесь нас подстерегает одна опасность. Код будет работать лишь тогда, когда форма имеет фокус. Если форма содержит элементы управления, то фокус может находиться у данного элемента. И тогда нажатия на клавиши навигации не принесут желаемого результата. Это ограничение легко обходится добавлением соответствующего обработчика события, как показано в листинге 9.6.
private void Form1_Load(object sender, EventArgs e) {
pictureBox1.Focus();
this.pictureBox1.KeyDown += new KeyEventHandler(Form1_KeyDown);
}
Теперь, даже если фокус находится не у формы, пользователь все равно сможет прокручивать форму при помощи клавиш навигации.
Глава 10
Windows Mobile 5.0
Первый взгляд
Устройства под управлением Windows Mobile, к которым относятся КПК и смартфоны, все глубже вторгаются в нашу жизнь. Эти устройства очень быстро эволюционируют, обзаводятся более совершенными экранами, увеличивают размер своей дисковой памяти, снабжаются фотокамерами и получают поддержку новых сетевых технологий. Операционная система Windows Mobile 5.0 сделала еще один шаг в развитии этих маленьких, но умных устройств.
В новой платформе появилась поддержка двухмерных и 3D-изображений, появилось больше возможностей обработки мультимедийных файлов, намного проще стало взаимодействовать с фотокамерами и устройствами позиционирования GPS. Причем эта поддержка осуществлена на программном уровне с помощью новых классов и расширения функциональности старых классов.
Компания Microsoft уделяет большое внимание данной платформе, предоставляя разработчикам подробнейшую документацию, примеры и инструменты разработки. Главная страница для Window Mobile 5.0 находится на сайте Windows Mobile по адресу msdn.microsoft.com/mobility/windowsmobile/default.aspx.
На сайте можно скачать необходимые пакеты SDK, позволяющие работать с устройствами под управлением Windows Mobile 5.0. В этой главе будут рассматриваться новые возможности, заложенные в систему Windows Mobile 5.0, которые будут интересны программистам.
Улучшенная продуктивность
В системе Windows Mobile 5.0 появились нововведения, которые увеличивают продуктивность труда программиста. Основные возможности перечислены в следующем списке.
□ Появились новые API, связанные с отображением графики, управлением контактами и взаимодействием с GPS.
□ Продолжено стирание граней между КПК и мобильными телефонами. Код программы, написанный для КПК, легко портируется на смартфоны.
□ Улучшена и добавлена поддержка технологий передачи данных, в том числе прием и посылка SMS и телефонных звонков.
□ В Visual Studio 2005 добавлена поддержка устройств под управлением новой платформы с помощью SDK. Работа с данными более прозрачна, улучшен отладчик ошибок, изменен дизайн графического интерфейса, который позволяет менять ориентацию экрана и его разрешения.
□ Переработан эмулятор.
Поддержка мультимедиа
Теперь программисты могут использовать классы, взаимодействующие с фотокамерами. Это позволяет расширить область приложения камер и использовать их в работе с изображениями и видеозаписями в приложениях. Разработчики могут использовать возможности музыкального плеера Windows Media Player 10 Mobile в своих приложениях. Технология Direct3D позволяет разработчикам создавать более совершенные игры, а библиотека DirectDraw позволяет работать с графикой на более высоком уровне.
Поддержка управляемого кода
Система Windows Mobile 5.0 обеспечивает первоклассную поддержку программистов, работающих с управляемым кодом. Основные нововведения перечислены в следующем списке.
□ Все устройства под управлением Windows Mobile 5.0 поставляются с исполняемой средой .NET Compact Framework 1.0 Service Pack 3, которая записана в независимую память.
□ При помощи управляемого кода осуществляется работа с SMS-сообщениями, контактами