| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Вывести текст в Word |
| Автор: Нитонисе 28.12.2009, 14:22 |
| Есть компонент RichEdit, заполненный некоторым текстом в обогащенном формате. Как его вывести в Word? Кроме того хотелось бы понять общий принцип формирования Word-документа из моего приложения. Кроме текста хотелось бы вставлять некоторые изображения, формировать таблицы. Где об этом можно почерпнуть информацию? |
| Автор: smoke_man 28.12.2009, 14:25 |
| Посмотри http://wladm.narod.ru/Borland/word.html Добавлено через 9 минут и 52 секунды Можно еще у Архангельского почитать - А.Я. Архангельский "Программирование в C++ Builder 6". |
| Автор: Нитонисе 28.12.2009, 14:51 |
| А компоненты с вкладки ьилдера Office2k для чего? В данной статье они не рассматриваются. И кстати пример, который там приведен для Word - не работает. |
| Автор: smoke_man 28.12.2009, 14:59 |
| Посмотри http://forum.sources.ru/index.php?showtopic=51366 Просто можно работать напрямую через OLE, либо пользовать компоненты. |
| Автор: smoke_man 28.12.2009, 15:46 | ||
Попробуй так:
|
| Автор: Usper 29.12.2009, 11:42 |
| Всё на сайте Wlada`а работает. Смотри мой пост тута: http://forum.vingrad.ru/forum/topic-284673/kw-wordapplication.html Здесь, правда, вывод таблицы, а не текста, как выводить текст смотри сайт Wlada. |
| Автор: Нитонисе 5.1.2010, 14:46 |
| А может кто нибудь просто выложить кусочек кода, который открывает ворд и закидывает туда текст из RichEdit? Например эти действия будут происходить по нажатию кнопки. |
| Автор: Нитонисе 5.1.2010, 15:24 | ||
Почему не работает вот этот кусочек кода?
Выскакивает ошибка на строчке - VDoc.OlePropertyGet("Paragraphs").OleProcedure("Add"); - с сообщением "Вызов был отклонен"? класс ошибки - EOleSysError |
| Автор: Usper 8.1.2010, 19:52 |
| Какая версия билдера и ворда? У меня этот кусок кода замечательно работает, но я уже сталкивался с тем, что код, нормально работающий с 2003 офисом, отказывается работать с 2007 в некоторых случаях :(. Причём код на Visual Basic, генерируемый при записи макроса, и впоследствии используемый для перевода в С++, одинаков, что для 97 ворда, что для 2007. |
| Автор: Нитонисе 8.1.2010, 19:54 |
Ворд 2002, а билдер 2006. Вобщем-то решил проблему вывода текста через компоненты билдера, не используя напрямую OLE. |
| Автор: Usper 8.1.2010, 19:57 |
| На крайний случай, можно просто сохранить содержимое RichEdit в rtf-файл и передать этот файл ворду |
| Автор: Нитонисе 8.1.2010, 20:05 | ||
|