Страница: 1 |
Страница: 1 |
Вопрос: Подскажите как отловить мышь на рабочем столе
Добавлено: 09.07.07 13:36
Автор вопроса: KreAtoR
Мне надо выделить мышкой место на рабочем столе. Какой либо Rectangle, как это обычно делается а программой отловить эти две точки (левую верхнию и правую нижнию)
то есть надо полусить 4 переменных. Top, Bottom, Left Right. Подскажите как это сделать. Хотелось бы получить примерчик, чтоб во всем разобраться.
Ответы
Всего ответов: 15
Номер ответа: 1
Автор ответа:
Alexandrus
ICQ: 496782368
Вопросов: 18
Ответов: 312
Web-сайт:
Профиль | | #1
Добавлено: 09.07.07 15:43
Private Declare Function DrawFocusRect Lib "user32" (ByVal hdc As Long, lpRect As RECT) As Long
Private Declare Function GetWindowDC Lib "user32" (ByVal hWnd As Long) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Номер ответа: 2
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #2
Добавлено: 09.07.07 15:58
Alexandrus а они все нужны или достаточно последней. Я представляю себе все это дело так.
В одной точке MouseDown а в другой MouseUp оттуда и будет высчитан прямоугольник
Номер ответа: 3
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #3
Добавлено: 09.07.07 16:16
Private Declare Function GetWindowDC Lib "user32" (ByVal hWnd As Long) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
а как это работает вообще
Номер ответа: 4
Автор ответа:
Alexandrus
ICQ: 496782368
Вопросов: 18
Ответов: 312
Web-сайт:
Профиль | | #4
Добавлено: 09.07.07 16:17
Если рисовать прямоугольник на рабочем столе не нужно , то позицию курсора отловишь c помощью GetCursorPos.Остальное для рисования прямоугольника...
Номер ответа: 5
Автор ответа:
Alexandrus
ICQ: 496782368
Вопросов: 18
Ответов: 312
Web-сайт:
Профиль | | #5
Добавлено: 09.07.07 16:23
Ты писал,что нужно выделить место на рабочем столе,вот я и привёл для этого дела нужные API. ...или конкретнее выражай хотелку
Номер ответа: 6
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #6
Добавлено: 09.07.07 16:29
пасибо. Прямоугольник тоже нарисовать неплохо. Это даже круто!!!!! просто если несмогу, то воспользуюсь тока сочками. Подскажи как с этим работать или кинь какой нить примерчик плиззз
Номер ответа: 7
Автор ответа:
Alexandrus
ICQ: 496782368
Вопросов: 18
Ответов: 312
Web-сайт:
Профиль | | #7
Добавлено: 09.07.07 16:38
Мыльце давай... А я вот чегой-то не догнал ,"сочки"-это ,что за зверь)
Номер ответа: 8
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #8
Добавлено: 09.07.07 16:59
сочки -точки )) смотрится прикольно!!!
мыло f_nick@mail.ru
Номер ответа: 9
Автор ответа:
Alexandrus
ICQ: 496782368
Вопросов: 18
Ответов: 312
Web-сайт:
Профиль | | #9
Добавлено: 09.07.07 17:34
Проверяй...
Номер ответа: 10
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #10
Добавлено: 09.07.07 19:32
конечная цель?
<telepat mode>
Сделать скриншот экрана, и ботать типичные примеры выдиления части изображения...
</telepat mode>
Номер ответа: 11
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #11
Добавлено: 10.07.07 13:01
2. Alexandrus проверил попробовал. что то в этом есть. вопрос тока как это на рабочий стол вынести а не на форму???
2.HACKER конечная цель такова.
Когда грабишь энкодером часть экрана, чтобы не указывать точки в ручную, а выделить место мышкой, как это в принципе есть в WMEncoder.
Проблема тока когда форма теряет фокус и действия мыши происходят за ее пределами, то тяжело определить где мышу нажали а где отпустили
Номер ответа: 12
Автор ответа:
avdey
ICQ: 219571279
Вопросов: 34
Ответов: 486
Профиль | | #12
Добавлено: 10.07.07 13:56
Отлов нажатия левой кнопки мыши:
CBool(GetKeyState(vbKeyLButton) And &H8000)
Номер ответа: 13
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #13
Добавлено: 10.07.07 21:04
KreAtoR, незнаю, никогда не пользовался WMEncoder'ом, но примеров с хуками мыши очень много, и помойму даже на этом сайте. В любом случае поискать любым поисковиком, найдешь с десяток работающий примеров. Да и сложного там ничего нет...
Номер ответа: 14
Автор ответа:
KreAtoR
Вопросов: 120
Ответов: 438
Профиль | | #14
Добавлено: 11.07.07 12:54
Пасибки большое все получилось как и хотел. Отловил точки теперь пытаюсь начертить толстые линии вокруг прямоугольника который я черчу мышкой на рабочем столе. Если можете подскажите куда смотреть.
Номер ответа: 15
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #15
Добавлено: 11.07.07 20:20
В поисковик смотреть...
http://www.sources.ru/delphi/graphics/gdi_graphics_in_delphi.shtml