Здравствуйте, Игнат, Вы писали:
И>Здравствуйте, Турилин Александр Сергеевич, Вы писали:
ТАС>>Здравствуйте!
ТАС>>Я хочу при нажатии на стандартную кнопку Open из Toolbar'a получать ссылку на выбранный файл.
ТАС>>MSDN мне рекоммендует написать собственную функцию-реакцию на константу ID_FILE_OPEN. Спасибо. говорю я ему. Еще хотелось бы знать, что именно туда надо писать!
ТАС>>В том же самом МСДН я нашел диалог, который называется CFileDialog. Тут можно все задавать с помощью FLAGS ( только не понятно как этот FLAGS устроен — это массив или что?) и прочих параметров в конструкторе или с помощью разнообразных методов. Потом говориться, что нужно сделать DoModal. На этом месте все ломается...
ТАС>>В любом случае это не позволяло мне получить ссылку на файл.
ТАС>>Да — еще мне надо ограничить расширения. Это можно сделать в том же CFileDialog, а если в нем не получается, то как?
ТАС>>Заранее спасибо!
И>Если я правильно понял, то используется либо MDI или SDI интерфейс, в этом случае в классе документе необходимо переопределить виртуальную функцию
И>И>BOOL CDoc::OnOpenDocument(LPCTSTR lpszPathName)
И>{
И> if (!CDocument::OnOpenDocument(lpszPathName))
И> return FALSE;
И>
И> // TODO: Add your specialized creation code here
И> return TRUE;
И>}
И>
И>Она вызывается после удачного закрытия окна "Open file", и её параметр есть имя файла.
И>
Наверно ты немного неправильно понял...
Надо переопределить ф-цию OnFileOpen() она м.б и не виртуальной, и обрабатываться на ID_FILE_OPEN
Там вызываешь диалог и читаешь документ...