Re[2]: Font Property Page
От: Thanatos Украина  
Дата: 26.07.02 12:23
Оценка:
Здравствуйте Dima2, Вы писали:

D>Здравствуйте Thanatos, Вы писали:


T>>Народ!!! Как коректно работать со стандартными property page-ами? При попытке вывести на екран при помощи OleCreatePropertyFrame(...) property page для font-а из библиотеки mfc42.dll property page не инициализируется, т.е. список шрифтов, установленых в системе пустой и т.д.


T>>Помогите, please!!!


D>Покажи как ты вызываеш OleCreatePropertyFrame, что передаеш в IUnknown* и CLSID.



За вызов отвечает следующий фрагмент кода:
HRESULT hr;
IPropPagePtr pObj;
IUnknown* pUnk;
CLSID cls;

hr = pObj.CreateInstance("MBProp.PropPage");
hr = pObj->QueryInterface(__uuidof(IUnknown), (void**)&pUnk);
hr = CLSIDFromString(L"{0BE35200-8F91-11CE-9DE3-00AA004BB851}", &cls);

hr = OleCreatePropertyFrame(::GetActiveWindow(), 0, 0, L"ABCD", 1, &pUnk, 1, &cls , NULL, 0, 0);

где IPropPage интерфейс с property Font. Реализация интерфейса — CPropPage — "Simple ATL object" c progid "MBProp.PropPage" и членом класса m_pFont. "{0BE35200-8F91-11CE-9DE3-00AA004BB851}" — ID нужного property page (в даном случае — "Font Property Page", библиотека mfc42.dll)

Результат выполнения — вывод на екран нужного Property Page, но полностью disable, т.е. нельзя ничего выбрать, не загружены стандартные шрифты (список шрифтов пустой),...

Заранее спасибо за ответ.
Лучший дар, который мы получили от природы и который лишает нас всякого права жаловаться – это возможность сбежать. /М.Монтень/
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.