На главную страничку учебника Visual BasicКонтексты устройств Контекст устройства (Device Context или DC) - это структура данных, содержащая физические параметры устройства и используемая для доступа к устройству. На таких контекстах можно рисовать, выводить текст, закрашивать фигуры и т.д. и т.п. В API функциях Windows есть масса функций для работы с контекстами устройств. Здесь мы остановимся на наиболее часто используемых. CreateDC - возвращает контекст устройства, заданного имени. Следующий пример создаёт контекст дисплея (экрана): Dim
hDisp As Long Здесь переменная dM - типа DEVMODE. Это очень большая структура, которую необходимо включить в код. А теперь мы используя ф-цию BitBlt скопируем на этот контекст изображение из PictureBox. Итак, поместите на форму PictureBox и загрузите туда произвольную картинку. Затем создайте кнопку и вставьте вот такой код: Dim
hDisp As Long Запустите программу и посмотрите что произойдёт. А теперь напишем более сложную программу, которая будет выводить в PictureBox содержимое экрана под курсором. Поместите на форму PictureBox и задайте ему размеры 80 на 80 пикселей. Создайте таймер с интервалом 100 миллисекунд. Далее создайте новый модуль и вставьте в него следующие определения: Type
DEVMODE Type
POINTAPI Declare
Function
GetCursorPos Lib "user32" (lpPoint
As POINTAPI) _ Declare
Function
SetWindowPos Lib "user32" _ Declare
Function CreateDC
Lib "gdi32" Alias
"CreateDCA" _ Declare
Function BitBlt Lib "gdi32"
(ByVal hDestDC As
Long, _ Теперь поместите в код формы код: Dim
hDisp As Long Private
Sub
Form_Load() Private
Sub
Timer1_Timer() Вот и всё. Желаю приятного программирования на контекстах устройств. На главную страничку учебника Visual Basic |