Мне необходимо сделать на листе прямоугольник с изменяемыми пользователем размерами.
При этом текущие размеры в миллиметрах необходимо показывать внутри прямоугольника.
В общем должен получиться приближенный аналог прямоугольника с проставленными размерами как в Visio.
Прямоугольник должен свободно перемещаеться по экрану мышкой в обычном режиме (не в режиме конструктора форм!). Дополнительные кнопки на листе крайне нежелательны, а на панелях управления и пунктах меню - вообще не допустимы.
Т.е. остаётся одно: использовать вызов процедур по событиям объекта.
Т.к. из графических объектов листа обработку событий поддерживает только ДИАГРАММА, то вместо прямоугольника решил её и использовать.
Вроде, практически всё заработало. НО!
Я полхо умею работать с диаграммами, поэтому встал ряд проблем:
После изменения размеров диаграммы они должны отображаться внутри поля.
Не знаю, в какой из параметров диаграммы их вывести...?
Хоть ChartArea и имеет все параметры для форматирования выводимого на неё текста, но сам текст вывести некуда - нет у ChartArea такого параметра.
Пришлось выводить в ChartTitle, но у него нет параметров Height и Width, а есть только Top и Left поэтому не могу сделать высоту и ширину во всё поле ChartArea - остаются пустые поля справа и внизу.
Да ещё и ChartTitle.AutoScaleFont как-то странно работает - не после каждого изменения размера подстраивает текст.
При этом размеры нужны в миллиметрах! Как пересчитать - не знаю …
Ну, и там ещё пара вопросиков есть чисто по теории в комментариях... :)
При этом текущие размеры в миллиметрах необходимо показывать внутри прямоугольника.
В общем должен получиться приближенный аналог прямоугольника с проставленными размерами как в Visio.
Прямоугольник должен свободно перемещаеться по экрану мышкой в обычном режиме (не в режиме конструктора форм!). Дополнительные кнопки на листе крайне нежелательны, а на панелях управления и пунктах меню - вообще не допустимы.
Т.е. остаётся одно: использовать вызов процедур по событиям объекта.
Т.к. из графических объектов листа обработку событий поддерживает только ДИАГРАММА, то вместо прямоугольника решил её и использовать.
Вроде, практически всё заработало. НО!
Я полхо умею работать с диаграммами, поэтому встал ряд проблем:
После изменения размеров диаграммы они должны отображаться внутри поля.
Не знаю, в какой из параметров диаграммы их вывести...?
Хоть ChartArea и имеет все параметры для форматирования выводимого на неё текста, но сам текст вывести некуда - нет у ChartArea такого параметра.
Пришлось выводить в ChartTitle, но у него нет параметров Height и Width, а есть только Top и Left поэтому не могу сделать высоту и ширину во всё поле ChartArea - остаются пустые поля справа и внизу.
Да ещё и ChartTitle.AutoScaleFont как-то странно работает - не после каждого изменения размера подстраивает текст.
При этом размеры нужны в миллиметрах! Как пересчитать - не знаю …
Ну, и там ещё пара вопросиков есть чисто по теории в комментариях... :)