Это своего рода .... вопрос из двух частей. Первый из них гораздо важнее второго, оба из них находятся в одном проекте и в vb.net.Rectangles & Parsing in vb.net
Как я могу ограничить границы объекта прямоугольника, который управляется мышью, поэтому его нельзя рисовать вне PictureBox? Это классное управление lasso, пользователь может щелкнуть и перетащить, и он вытащит ящик из начальной точки щелчка в текущее местоположение мыши. Исходная точка находится в (rectX, rectY), и поле рисуется в правом нижнем углу, используя rectDimX и rectDimY (чтобы установить ширину и высоту), чтобы увидеть, сколько изменений произошло с помощью мыши. В основном, это то, что вы получаете с помощью щелчка и перетаскиваете рабочий стол Windows. Проблема здесь в том, что прямоугольник можно рисовать за пределами PictureBox, на который он нарисован, а следующая часть кода пытается ссылаться на это местоположение, а затем сбой OutOfMemory. Это приводит меня к моему второму вопросу:
Как я могу сделать рисование прямоугольника более четвертого квадранта, который является только положительным числом? Если он идет в другом месте, он не отображает прямоугольник, хотя он все еще имеет правильные значения. Я знаю, что я мог бы кодировать это четыре раза в зависимости от исходного местоположения и местоположения мыши, но это было бы огромной проблемой и переписанием всего кода прямоугольника.
Есть ли простое решение для любого из них? Первый из них - гораздо большая проблема, так как это будет очень трудоемким, если нет простого способа.
Спасибо за помощь!
Это отрицательные числа, которые являются проблемой, прямоугольник, когда слева или выше мыши имеет отрицательную высоту или ширину. Конечно, я мог бы просто установить его на абсолютную величину и перенести его ... что я действительно могу сделать. Вау, я удивляюсь, почему я не думал об этом до LOL! – Cyclone
Обычно вы хотите «перевести» происхождение вашей мыши в начало вашего окна чертежа. Отредактировал свой ответ выше с информацией об этом (так как я сейчас понимаю эту часть) –
Хм, я все еще смущен этим ... Можете ли вы привести пример синтаксиса для перевода окна чертежа в X и Y из PictureBox? – Cyclone