Страница 1 из 1

Отображение выделенного шейпа на форме

Добавлено: 17 ноя 2004, 14:55
AlexGur
Уважаемые дивелоперы!
Делаю сейчас в Ворде вот такое: в самом документе много разделов (Sections), в каждом из которых нарисованы шейпы (Freeform, Line, TextBox). У меня есть форма, на которой торчит TabStrip, а Tabs пронумерованы по номерам разделов. При смене Tab отображается список всех шейпов в нужном разделе, а при выборе конкретного шейпа он выделяется в документе.
Все вроде тип-топ, но хочется сделать нагляднее и красивше.
Хочется при выделении конкретного шейпа в списке тут же выводить его изображение на форму. Неважно куда, хоть просто в клиентскую область формы (или в Image внутри формы), лишь бы отображался. Как ни извращался с Copy/CopyAsPicture/Paste/PasteSpecial, ничего не выходит. Шейп, судя по всему, кидается в буфер, но на форму идти не хочет. Понятно вроде, что форма любит контролы, а не произвольные объекты.
Как бы такое сотворить? Если вопрос откровенно глуп, намекните, пожалуйста.
Дело в данном случае даже не в ограничениях интерфейса Shapes, а в принципиальном вопросе: можно ли как-то нечто скопированное в буфер перетащить на форму (не в документ), если это не является контролом?
С надеждой на реакцию, AlexGur.

Добавлено: 27 ноя 2004, 22:32
Дмит
Для отображения Shapes на форме я использую RichTextBox.
Посмотри http://dimit.pochta.ru/excel/richtbox.zip
Это в Excel, в Word почти тоже.

Масштабирование?

Добавлено: 28 ноя 2004, 22:19
AlexGur
Большое спасибо, Дмит, работает. Вот только как бы мне этот шейп масштабировать, чтобы он в этот RichTextBox целиком влез, а не только одним боком - и чтобы сам селекшен в документе не повредить при этом?

Добавлено: 29 ноя 2004, 21:33
Дмит
Сделал чистой воды химию, но у меня код работает.
Адрес файла тот же.