Проблемы С Позицией Курсора На Picturebox

  • Автор темы Triplecool
  • Дата начала
T

Triplecool

#1
Какая функция являеться нахождением положения курсора относительно pictureBox, а не всей формы? Я использовал pictureBox1->Cursor->position.X; и pictureBox1->Mouse->position.X; Но они дают координаты курсора относительно всей формы, а не компонента pictureBox?Помогите.
 

Senset

Well-known member
11.09.2006
136
0
#2
ну так посмотрите лежат ли координаты курсора в координатах picturebox (т.е. взять координаты компонента относительно формы, и посмотреть в них ли курсор) и если да, то например можно написать функцию которая будет методом вычитания и сравнений выдавать координаты курсора относительно бокса, исходя из координат курсора и бокса относительно формы)

или просто создать событие mousemove или по клику на боксе... и тогда не парьтесь насчет координат, они сами придут =) и будут точно на боксе)

или еще проще...
m_Canvas.PtInRect(point) - вставить в условие... m_Canvas - ваша канва, point - соотв. точка при событии курсора...
Например:

Код:
void CFuncDlg::OnMouseMove(UINT nFlags, CPoint point) 
{
// TODO: Add your message handler code here and/or call default
if ((nFlags & MK_LBUTTON) && m_Canvas.PtInRect(point))
{
DrawShape(true); // Обновить рисунок
};
CDialog::OnMouseMove(nFlags, point);
}