![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
отслеживание курсора и перерисовка изображения [D6, D7, Win2k, WinXP]
malamba © (2004-08-05 10:12:00)Я тут завяз на портировании штучки под названием xeyes , известной Linux-ксоидам на платформу Windows.
В принципе все готово, но меня терзают смутные сомнения - а правильно ли я делаю.
Вообщем задача такая: программа отслеживает курсор мыши и в зависимости от его положения водит в его сторону зрачки глаз.
Может у кого есть какие соображения?
Я лично пока сделал так: на форме - Tshape ( эллипсы), в них - Tshape ( зрачки).
По таймеру прога узнает координаты мыши ( GetCursorPos),
проводит вычисления, присваивает зрачкам новые значения координат.
Затем идет Tshape.Repaint.
Может правильнее использовать Canvas?
И правильно ли садить Tshape прямо на форму?
GrayFace (2004-08-05 13:38:00) [1]Invalidate
GrayFace (2004-08-05 13:37:00) [2]А зачем TShape.Repaint? При перемещении он и так перерисуется. К тому же обычну лучше использовать Invzlidate.
Axis_of_Evil (2004-08-05 10:53:00) [3]>а это как, не понял, можно поподробнее?
это без VCL, т.е. без TForm, TShape ... и вообще без 'Т' :>
см CreateWindow(Ex)
panov (2004-08-05 10:52:00) [4]>malamba (05.08.04 10:50) [5]
Перевести на WinAPI- избавиться от VCL-компонент(TForm,TButton и пр...), и создавать не формы, а окна(CreateWindow и т.п).
malamba (2004-08-05 10:50:00) [5]Извините, затупил...
>после отладки всего этого наверное будет приятно перевести все на WinAPI
а это как, не понял, можно поподробнее?
malamba (2004-08-05 10:46:00) [6]О, спасибо, спасибо...
Ega23 (2004-08-05 10:44:00) [7]Вообще я бы посоветовал не пользоваться таймером, а установить Хук на движения мыши, как это сделать думаю разберешся сам
Или на OnIdle повесить
don-do (2004-08-05 10:38:00) [8]Вообще я бы посоветовал не пользоваться таймером, а установить Хук на движения мыши, как это сделать думаю разберешся сам
panov (2004-08-05 10:37:00) [9]Мне кажется, что правильнее будет использовать хук для отлавливания перемещения курсора(хотя могу быть и не прав).
А рисовать можно и прямо на канве формы.
А посел отладки всего этого наверное будет приятно перевести все на WinAPI, уменьшив размер программы раз в 20-)