virtual CDocument* CFrameWnd::GetActiveDocument() 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

virtual CDocument* CFrameWnd::GetActiveDocument()

Поиск

virtual CDocument* CFrameWnd::GetActiveDocument()

возвращает указатель на документ, ассоциированный с текущим активным представлением.Если такого нет, то NULL.

 

А т.к. документ отвечает за сохранение данных на диске, в нем есть метод

 

const CString& CDocument::GetPathName()

возвращает полный путь к файлу документа. Строка будет пустой, если документ еще не был сохранен или с ним не ассоциирован никакой файл.

 

Теперь мы можем создать объект с исходными данными задачи, прочитать туда данные задачи из файла, и заполнить соответствующие поля структуры типа ThreadParams.

2 способ (более сложный): получение данных непосредственно из документа. В данном случае, данные хранятся в представлении – наследнике класса CEditView. Получить текст можно с помощью функции

 

void CWnd::GetWindowText(CString &rString)

 

После этого необходимо провести разбор полученной строки (фактически, интерпретацию) для выделения данных.

 

После того, как данные задачи так или иначе получены, осталось заполнить поле hWnd структуры ThreadParams. Для этого идентификатор окна Win32, ассоциированного с объектом класса CChildWnd (как и любого другого объекта-окна MFC) можно получить методом

HWND CWnd::GetSafeHwnd()

 

(если с данным объектом не связано никакое окно Win32, GetSafeHwnd возвратит NULL).

 

В файле “ChildFrm.cpp” вводим в созданную уже заготовку функции-обработчика код примерно такого содержания:

 

void CChildFrame::OnSolveThis()

{   

if (m_thisThreadParams.pProblem) return;

try

{



Поделиться:


Последнее изменение этой страницы: 2024-06-27; просмотров: 47; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.217.21 (0.007 с.)