Button and Picturebox
Доброго проведения суток, я сделал простенький Paint. Когда я рисую, сразу же выделяется область рисования. Так и было задумано, но я хочу, чтобы эта область выделялась тогда, когда нажата кнопка на форме и уже можно было только выделять , а рисовать нет. Вот код выделения:
private: System::Void pictureBox1_Paint(System::Object^ sender, System::Windows::Forms::PaintEventArgs^ e) {
//обработчик Paint для ситуации, когда выделяем рамку
e->Graphics->DrawRectangle(Pens::Black, selRect);
}
private: System::Void Selection_Paint(System::Object^ sender, System::Windows::Forms::PaintEventArgs^ e) {
//обработчик Paint для остальных ситуаций - добавили через События pictureBox1
e->Graphics->DrawRectangle(pen, selRect);
}
private: Rectangle GetSelectionRectangle(Point orig, Point location) {
//Этот метод пришлось написать, чтобы координаты выделения правильно запоминались
//независимо от того, в какую сторону тащим курсор мыши
Rectangle rect = Rectangle();
int dX = location.X - orig.X, dY = location.Y - orig.Y;
System::Drawing::Size size = System::Drawing::Size(Math::Abs(dX), Math::Abs(dY));
//размеры текущего выделения
if (dX >= 0 && dY >= 0) rect = Rectangle(orig, size);
else if (dX < 0 && dY>0) rect = Rectangle(location.X, orig.Y, size.Width, size.Height);
else if (dX > 0 && dY < 0) rect = Rectangle(orig.X, location.Y, size.Width, size.Height);
else rect = Rectangle(location, size);
return rect;
}
Как сделать это выделение через кнопку?