несколько типов документов в SDI-приложении
От: savatf  
Дата: 12.11.03 17:44
Оценка:
Как реализовать? (по аналогии с WordPad)
нужно чтобы однодокументное приложение открывало файлы разных типов. спасибо.
Re: несколько типов документов в SDI-приложении
От: Serguei666 Беларусь  
Дата: 12.11.03 18:13
Оценка:
Здравствуйте, savatf, Вы писали:

S>Как реализовать? (по аналогии с WordPad)

S>нужно чтобы однодокументное приложение открывало файлы разных типов. спасибо.

Смотрите на расширение, делайте вывод o формате и вызывайте соответствущую процедуру чтения файла.
Хотите сказать 'спасибо'? Тогда поставьте оценку
Re: несколько типов документов в SDI-приложении
От: _Jane_ Украина  
Дата: 12.11.03 18:26
Оценка:
Здравствуйте, savatf, Вы писали:

S>Как реализовать? (по аналогии с WordPad)

S>нужно чтобы однодокументное приложение открывало файлы разных типов. спасибо.

Сделать несколько шаблонов документов?

    CSingleDocTemplate* pDocTemplate;
    pDocTemplate = new CSingleDocTemplate(
        IDR_MAINFRAME,
        RUNTIME_CLASS(CMySingledocDoc),
        RUNTIME_CLASS(CMyMainFrame),       // main SDI frame window
        RUNTIME_CLASS(CMySingledocView));
    AddDocTemplate(pDocTemplate);

    pDocTemplate = new CSingleDocTemplate(
        IDR_MAINFRAME,
        RUNTIME_CLASS(CMyAnotherSingledocDoc),
        RUNTIME_CLASS(CMainFrame),       // main SDI frame window
        RUNTIME_CLASS(CMyAnotherSingledocView));
    AddDocTemplate(pDocTemplate);
Jane
Re[2]: несколько типов документов в SDI-приложении
От: SWW Россия  
Дата: 13.11.03 05:49
Оценка:
S>>Как реализовать? (по аналогии с WordPad)
S>>нужно чтобы однодокументное приложение открывало файлы разных типов. спасибо.

_J_>Сделать несколько шаблонов документов?


_J_>
_J_>    CSingleDocTemplate* pDocTemplate;
_J_>    pDocTemplate = new CSingleDocTemplate(
_J_>        IDR_MAINFRAME,
_J_>        RUNTIME_CLASS(CMySingledocDoc),
_J_>        RUNTIME_CLASS(CMyMainFrame),       // main SDI frame window
_J_>        RUNTIME_CLASS(CMySingledocView));
_J_>    AddDocTemplate(pDocTemplate);

_J_>    pDocTemplate = new CSingleDocTemplate(
_J_>        IDR_MAINFRAME,
_J_>        RUNTIME_CLASS(CMyAnotherSingledocDoc),
_J_>        RUNTIME_CLASS(CMainFrame),       // main SDI frame window
_J_>        RUNTIME_CLASS(CMyAnotherSingledocView));
_J_>    AddDocTemplate(pDocTemplate);
_J_>


Кроме того, тебе придется переопределить CDocManager и некоторые из его виртуальных функций. Я такое делал, но подробностей уже не помню.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.