Программирование КПК и смартфонов на .NET Compact Framework | страница 25
>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
. Если менять отображаемые картинки при помощи таймера, то можно даже создать небольшую мультипликацию. Для этого достаточно список рисунков заполнить набором изображений, а затем поочередно отображать их в графическом поле.