Александр Климов - Программирование КПК и смартфонов на .NET Compact Framework
- Название:Программирование КПК и смартфонов на .NET Compact Framework
- Автор:
- Жанр:
- Издательство:Питер
- Год:2007
- Город:Санкт-Петербург
- ISBN:978-5-91180-270-7
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Александр Климов - Программирование КПК и смартфонов на .NET Compact Framework краткое содержание
Мобильные устройства все активнее вторгаются в нашу жизнь. Карманные компьютеры и смартфоны давно утратили статус дорогих игрушек и перекочевали в разряд необходимых устройств. Значит, для них необходимо создавать программное обеспечение. Так почему вы должны оставаться в стороне?
Прочитав эту книгу, вы получите знания, которые позволят вам уверенно создавать программы для карманных компьютеров и смартфонов. А огромное количество разнообразных примеров поможет быстро совершенствоваться и развиваться, обогащая свой опыт работы.
Книга предназначена для начинающих программистов.
Программирование КПК и смартфонов на .NET Compact Framework - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Основным методом для этих элементов является ShowDialog
. После его вызова на экране отображается модальное окно, в котором пользователь должен нажать кнопку OK
или Cancel
. При этом метод ShowDialog
возвращает значения DialogResult.OK
и DialogResult.Cancel
соответственно. Если получено значение DialogResult.OK
, то пользователь нажал кнопку OK
и в свойстве Filename
содержится полный путь к выбранному файлу.
Пример работы с элементами OpenFileDialog
и SaveFileDialog
приведен в листинге 3.14.
private void butOpen_Click(object sender, EventArgs e) {
ofd.Filter = "DLL|*.dll|Картинки|*.jpg";
ofd.InitialDirectory = "\\My Documents\\Templates";
if (DialogResult.OK == ofd.ShowDialog()) {
statusBar1.Text = ofd.FileName;
} else {
statusBar1.Text = "Вы нажали на кнопку Отмена!";
}
}
Элементы HScrollBar и VScrollBar
Элементы управления HScrollBar
и VScrollBar
позволяют создавать полосы прокрутки для элементов, которые изначально не обладают этой функциональностью. Пользоваться этими полосами прокрутки совсем не сложно. Свойство Minimum
задает значение элемента, когда ползунок находится в крайней левой или в крайней верхней позиции, для HScrollBar
или VScrollBar
соответственно. Свойство Maximum
, задает максимальное значение для полос прокрутки. Значение свойства Value
зависит от положения ползунка. Оно всегда находится в диапазоне между значениями свойств Minimum
и Maximum
.
Когда пользователь щелкает на полосе прокрутки, то свойство Value изменяется в соответствии со значением, заданным в свойстве LargeChange
. Когда пользователь нажимает на кнопку навигации со стрелкой, то свойство Value изменяется в соответствии со значением, заданным в свойстве SmallChange
. Следует обратить внимание на то, что если ползунок находится в положении, определяемом свойством Maximum
, то свойство Value
не равно значению Maximum
. В этом случае значение свойства Value
вычисляется по формуле Maximum - LargeChange + 1
.
При изменении свойства Value
инициируется событие ValueChanged
. В листинге 3.15 приведен пример работы с полосами прокрутки.
private void vScrollBar1_ValueChanged(object sender, EventArgs e) {
this.lblScroll.Text = this.vScrollBar1.Value.ToString();
}
На рис. 3.10 показан внешний вид приложения. Если переместить ползунок в нижнюю часть полосы прокрутки, то значение в соответствии с формулой будет равно 91.

Рис. 3.10. Пример работы с полосами прокрутки
Список рисунков (ImageList)
Элемент управления ImageList
уже рассматривался при знакомстве с элементом ToolBar
. Элемент ImageList
используется для хранения коллекций растровых изображений. Как и многие другие элементы, список рисунков не отображается во время выполнения программы, а используется как контейнер, из которого по мере необходимости извлекаются хранимые изображения. Как правило, данный элемент используется совместно с такими элементами управления, как ListView
, TreeView
и ToolBar
.
Изображения можно добавлять в элемент управления во время работы приложения. Для этого используется метод Add
, который входит в состав члена класса Images
. Сами картинки могут располагаться как в отдельных файлах, так и в ресурсах приложения. В листинге 3.16 показано, как можно добавить картинку из ресурсов в ImageList
, а затем отобразить ее в элементе интерфейса PictureBox
.
Bitmap image = new Bitmap(Assembly.GetExecutingAssembly(),
GetManifestResourceStream(@"ImageList_CS.home.gif"));
imgList.Images.Add(image);
picTest.Image = imgList.Images[0];
Изображение добавляется в начало списка, и его порядковый номер будет равен нулю. Если в ImageList
уже было одно изображение, то новая картинка будет иметь порядковый номер, равный единице. Это иллюстрируется листингом 3.17.
private void butFromImageListClick(object sender, EventArgs e) {
picTest.Image = imgList.Images[1];
}
Все картинки, находящиеся в ImageList
, имеют одинаковый размер. По умолчанию используется размер 16×16 пикселов. Разработчик может изменить размеры изображений, используя свойство ImageSize
. Если менять отображаемые картинки при помощи таймера, то можно даже создать небольшую мультипликацию. Для этого достаточно список рисунков заполнить набором изображений, а затем поочередно отображать их в графическом поле.
Элемент PictureBox
Элемент управления PictureBox
используется для отображения графики. Данный элемент имеет ограниченную функциональность и не позволяет растягивать картинку в соответствии с размерами графического поля.
В листинге 3.18 приведен фрагмент кода, который позволяет загрузить изображение из графического файла.
private void butFromFile_Click(object sender, EventArgs e) {
picTest.Image = new Bitmap(@"\Windows\banner.gif");
}
Если использовать этот способ для добавления картинки, то нужно добавить изображение в проект и для свойства Build Action
в окне свойств Properties
задать значение Content
. В процессе подготовки приложения к инсталляции изображение будет рассматриваться как часть программы. В рассмотренном примере использовалась готовая картинка, которая находится в папке Windows
.
Также можно загрузить изображение из ресурсов приложения. В этом случае надо добавить картинку в проект и для свойства Build Action
задать значение Embedded Resource
. Тогда не придется специально включать изображения в состав инсталлятора. В листинге 3.19 приведен пример, иллюстрирующий добавление изображения из ресурсов.
private void butRes_Click(object sender, EventArgs e) {
// Загружаем из ресурсов
picTest.Image = new Bitmap(Assembly.GetExecutingAssembly().
GetManifestResourceStream("PictureBox_CS.kristina.jpg"));
}
Элемент ImageList
имеет свойство ImageSize
, которое задает размеры хранимых изображений. Перед загрузкой картинки в графическое поле можно установить требуемые размеры изображения с помощью данного свойства, как показано в листинге 3.20.
private void butImgList_Click(object sender, EventArgs e) {
// изменяем размеры картинки
imageList1.ImageSize = new System.Drawing.Size(160, 120);
// загружаем картинку с измененными размерами
picTest.Image = imageList1.Images[0];
}
На рис. 3.11 показан внешний вид приложения, в котором для работы с изображениями применяются все три описанных варианта.

Рис. 3.11. Пример работы с элементом PictureBox
Читать дальшеИнтервал:
Закладка: