Форум: "Начинающим";
Текущий архив: 2009.07.19;
Скачать: [xml.tar.bz2];
ВнизRXRichEdit вставка данных из нескольких файлов Найти похожие ветки
← →
AntonioPermskiy © (2009-05-24 22:13) [0]Здравствуйте, знатоки.
Во всем инете не нашел внятного описания сабжа.
Пока пользовался RXRichEdit.Lines.LoadFromFile - все было супер, но вот понадобилось добавлять в один RXRichEdit данные(в том числе и картинки) из разных файлов.
Пока искал нашелRXRichEdit.Perform(EM_STREAMIN, SF_RTF or SFF_SELECTION,
, но что-то не получается у меня в этои направлении.
longint(@t))
Спасибо за помощь.
← →
KilkennyCat © (2009-05-24 22:19) [1]В чем именно проблема? Вставить сразу из нескольких файлов, т.е. например, выделить в проводнике кучу картинок, и вставить? Или из одного файла, выделив в нем и текст и картинки?
← →
AntonioPermskiy © (2009-05-24 22:32) [2]
> В чем именно проблема?
Описываю:
0. Запустил приложение, форма с RxRichEdit-ом и 3 Btn-ами(LoadFromFiles, SaveToFile_0, SaveToFile_1)
1. "Написал например "0" и вставил картинку_0" в RxRichEdit-е - сохранил в файл c:\0.myext
2. "Написал 1 и вставил другую картинку_1" в RxRichEdit-е - сохранил в файл c:\1.myext
3. Не знаю как реализовать LoadFromFiles - надо чтобы RxRichEdit отобразил
0 картинка_0
1 картинка_1
Метод RXRichEdit.Lines.LoadFromFile переписывает содержимое, а не добавляет его. Есть метод LoadFromStream, но я не знаю как в один поток скидывать содержимое нескольких файлов - да и стоит ли это делать.
← →
KilkennyCat © (2009-05-25 01:42) [3]
> да и стоит ли это делать.
не стоит.
Упрощенно говоря, ты хочешь склеить два ртф?
Формат описан и доступен.
Например:
http://www.codenet.ru/progr/formt/rtf1.php
← →
AntonioPermskiy © (2009-05-25 06:21) [4]
> Формат описан и доступен.
Хорошо, конечно. Но как это закодить?
Правиьно ли я понял - Вы предлагаете сначала создать файл-объединение файлов, а потом уже новый файл грузить в RxRichEdit?
← →
KilkennyCat © (2009-05-25 09:15) [5]Необязательно. Можно загрузить сначала один, а потом вставить в него часть второго.
← →
AntonioPermskiy © (2009-05-25 10:39) [6]
> Можно загрузить сначала один, а потом вставить в него часть
> второго.
Загрузить первый - не проблема, что надо написать в коде далее для загрузки второго файла?
Уверен, здесь не более 5-и строк кода, но вот найти его не могу. Напишите, пожалуйста.
Спасибо.
← →
KilkennyCat © (2009-05-25 10:59) [7]Сам сделаешь.
Смотри:
открываем вордпад, создаем два файла. В одном пишем "Hello," В другом пишем "World!"
Открываем в блокноте.
Видим{\rtf1\ansi\ansicpg1251\deff0\deflang1049\deflangfe1049\deftab709{\fonttbl {\f0\froman\fprq2\fcharset204{\*\fname Times New Roman;}Times New Roman CYR;}{\f1\froman\fprq2\fcharset0 Times New Roman;}}
{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\nowidctlpar\f0\fs24 Hello,\lang1033\f1\par
}
и{\rtf1\ansi\ansicpg1251\deff0\deflang1049\deflangfe1049\deftab709{\fonttbl {\f0\froman\fprq2\fcharset204{\*\fname Times New Roman;}Times New Roman CYR;}{\f1\froman\fprq2\fcharset0 Times New Roman;}}
{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\nowidctlpar\f0\fs24 World!\lang1033\f1\par
}
Если мы хотим склеить оба, то используя простый файловые операции мы можем легко создать третий файл, либо stream, куда получим результат.
Все просто.
Но если не хочешь париться с нативной работой в ртф, то сделай жутко некрасиво, тупо, бессмысленно, бесполезно, но работоспособно:
Загрузи оба своих файла. В одном выдели содержимое, и через буфер обмена вставь во второй.
← →
AntonioPermskiy © (2009-05-25 12:08) [8]
> Но если не хочешь париться с нативной работой в ртф
Попарюсь. Спасибо за объяснение.
← →
KilkennyCat © (2009-05-25 12:29) [9]
> AntonioPermskiy © (25.05.09 12:08) [8]
И для экспериментов используй вордпад или свой напиши (если создашь в офисном ворде - там такой мрак будет...). Возможно, в сети еще есть исходники EkRTF - богатый материал.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.07.19;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c