Получение цвета любого пикселя на экране

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Diamond
Начинающий
Начинающий
 
Сообщения: 15
Зарегистрирован: 21.10.2002 (Пн) 13:11
Откуда: Питер

Получение цвета любого пикселя на экране

Сообщение Diamond » 14.01.2004 (Ср) 13:32

Народ, подскажите, как можно получить цвет пискселя, на котором находится курсор. Если за пределами окна программы этого сделать нельзя, то скажите хотя бы, как это осуществить в пределах этого окна. Заранее благодарен.
ХыХ.

Kostyan
Постоялец
Постоялец
 
Сообщения: 439
Зарегистрирован: 20.09.2002 (Пт) 4:14
Откуда: Россия, Уссурийск

Сообщение Kostyan » 14.01.2004 (Ср) 14:37

Вот код:

Код: Выделить всё
Private Sub Form_Load()
DeskDC = GetWindowDC(GetDesktopWindow)
End Sub

Private Sub Timer1_Timer()
Call GetCursorPos(Pt)
Clr = GetPixel(DeskDC, Pt.X, Pt.Y)
Me.BackColor = Clr
End Sub


Поставь у таймера интервал поменьше.

Это в модуль:

Код: Выделить всё
Type pointapi
        X As Long
        Y As Long
End Type

Declare Function GetCursorPos Lib "user32" (lpPoint As pointapi) As Long
Declare Function GetDesktopWindow Lib "user32" () As Long
Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long) As Long
Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long

Public Pt As pointapi, DeskDC As Long, Clr As Long


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, PetalBot и гости: 5

    TopList  
cron