А, так я думал тебе в рич-эдит напрямую надо. Ну тогда лучшим решением (посмотрел только что МСДН) будет StreamOut, с форматом SF_RTF. Скажем что-то такое:
| Код | DWORD SendRtfData(DWORD_PTR dwSender, LPBYTE buffer, LONG countToSend, LONG* pSendedCount) { // в dwSender- информация о получателе // юзаем reinterpret_cast к типу указателя MySender* sender= reinterpret_cast<MySender*>(dwSender); // предполагаем существование у MySender // метода, отслыающего данные с двумя параметрами: // буфер с данными и размер буфера, возвращает кол-во отосланных данных *pSendedCount = sender->Send(buffer, countToRead); }
... // функция-обработчик { MySender sender(/*параметры*/); EDITSTREAM es;
es.dwCookie = reinterpret_cast<DWORD_PTR>(&sender); es.pfnCallback = SendRtfData;
richEdit.StreamOut(SF_RTF, es); }
|
То? |