Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.08.2009, 21:34   #1
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию Можноли проверить, находиться ли мышь над нарисованной фигурой?

Например, кругом.
Естетсвенно без sin и cos...
TwiX вне форума Ответить с цитированием
Старый 25.08.2009, 22:28   #2
Daramant
Форумчанин
 
Регистрация: 06.01.2009
Сообщений: 340
По умолчанию

Фигуры рисуешь на Canvas?
Обрабатывай событие OnMouseMove и по текущим координатам мыши и фигуры определяй находится ли мышь внутри или нет.
Для круга это будет:
x0, y0 - координаты центра круга
r - радиус
Mx, My - координаты мыши.
Условие: (Mx - x0)^2 + (My - y0)^2 <= r^2

Для прямоугольника:
x1, y1 - координаты верхнего левого угла
x2, y2 - координаты нижнего правого угла
Mx, My - координаты мыши.
Условие: (x1 <= Mx <= x2) and (y1 <= My <= y2)

и так далее.
Сложные фигуры можно разбить на композицию простых.
Истинный успех – это то, что Вы сделали в сравнении с тем, что могли бы сделать.
Никогда не бойся делать то, что ты не умеешь. Помни, ковчег был построен любителем. Профессионалы построили "Титаник".
Daramant вне форума Ответить с цитированием
Старый 26.08.2009, 10:22   #3
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

вот например если у тебя каждая фигура нарисована на отдельных PaintBox'ах или Image, то можно так

Код:
var
  cur: TPoint;
begin
  GetCursorPos(cur);
  if WindowFromPoint(cur) = PaintBox1.Canvas.Handle then
     //здесь будет то что те надо
end;
писал по памяти, но должно получится ))
ZuBy вне форума Ответить с цитированием
Старый 26.08.2009, 10:35   #4
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Цитата:
над нарисованной фигурой
На чём нарисованной?
Координаты известны?

Посмотрите функцию PtInRegion...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
начало второй нарисованной линии должно передвинутся к началу первой. Delphi maddamo4ka Помощь студентам 7 08.12.2008 19:19
Закачать все что находиться по сайту... zotox Работа с сетью в Delphi 1 20.10.2008 09:22
Определить где находиться курсор в ТстрингГрид IgorKr Компоненты Delphi 6 11.07.2008 00:48
А можноли? Zeraim Win Api 1 21.04.2008 20:44
Мышь kl45gp Общие вопросы Delphi 7 16.06.2007 22:47