Техника программирования сложных окон в Visual Basic
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: изложение лицей, курсовик
| Добавил(а) на сайт: Жутов.
Предыдущая страница реферата | 1 2 3 4 | Следующая страница реферата
DeleteObject lRgn
End If
Loop
Next
End With
lGetRegion = lSkinRgn
End Function
Итак, для проверки на практике этого алгоритма загрузите пример pTestRgnSkin и внимательно изучите его код. В этом проекте нужный нам рисунок, для удобства, в файле ресурсов, кроме того проект запускается процедурой Main, в которой и происходят все преобразования. Вначале загружается форма, затем в PictureBox из ресурсов загружается нужный нам рисунок, далее вызывается функция, которая создает регион и, наконец, завершающий этап - прикрепление региона к нужному нам окну. Для удобства здесь же вызывается функция, помещающая окно , чтобы оно у Вас на рабочем столе Windows. Кроме того, для нормальной работы программы необходимо, чтобы для PictureBox свойство AutoRedraw было установленно в True, иначе ничего не получится.
Sub Main()
Dim lRgn As Long
Load frmTestRgnSkin
frmTestRgnSkin.pic.Picture = LoadResPicture(101, vbResBitmap)
lRgn = lGetRegion(frmTestRgnSkin.pic, vbWhite)
SetWindowRgn frmTestRgnSkin.hWnd, lRgn, True
DeleteObject lRgn
frmTestRgnSkin.Show
SetFormPosition frmTestRgnSkin.hWnd, True
End Sub
Теперь можно запускать проект... О, знакомое лицо, скажите Вы, это же из Microsoft Office. Да, похож, но не совсем, двигается, а этот нет. Что же нужно сделать, чтобы это окно динамически изменяло свою форму по рисунку, отображаемому в данный момент времени в PictureBox?
Динамическое изменение формы окна
Существуют программы в которых необходимо динамически во время работы изменять форму окна (например анимированный персонаж из Microsoft Office). Все это не очень сложно реализовать, нужно в событие PictureBox.Change добавить следующий код:
lRgn = lGetRegion(frmTestRgnSkin.pic, vbWhite)
SetWindowRgn frmTestRgnSkin.hWnd, lRgn, True
DeleteObject lRgn
SetFormPosition frmTestRgnSkin.hWnd, True
Рекомендуем скачать другие рефераты по теме: баллов, образец титульный реферата.
Категории:
Предыдущая страница реферата | 1 2 3 4 | Следующая страница реферата