【GUIライブラリ】wxWindowsでのひょーん
at TECH
529:514
03/10/12 23:57
(続き)ありゃ、ずれてしまった・・・スマン。
2.DLLを読み込んでインスタンスを生成する
wxPluginManagerを使ってDLLを読み込み、wxClassInfoを全走査して目的のクラスを見つけます。
これは URLリンク(lists.wxwindows.org) とほとんど同じです。
---------------------------------
#include <wx/wx.h>
#include <wx/dynload.h>
class MyApp : public wxApp {virtual bool OnInit();}; IMPLEMENT_APP(MyApp)
bool MyApp::OnInit() {
wxPluginLibrary* lib = wxPluginManager::LoadLibrary("./lib/Debug/lib.dll");
wxNode *node;
wxClassInfo* classInfo;
wxClassInfo::sm_classTable->BeginFind();
node = wxClassInfo::sm_classTable->Next();
while (node) {
classInfo = (wxClassInfo *)node->Data();
if (wxString(classInfo->GetClassName()) == wxT("MyFrame")) {
wxLogTrace(classInfo->GetClassName());
wxLogTrace(classInfo->GetBaseClass1()->GetClassName());
wxFrame* frame = (wxFrame*)classInfo->CreateObject();
frame->Create(NULL, -1, wxT(wxString("class ") + classInfo->GetClassName() + wxString(" : public ") + classInfo->GetBaseClassName1()));
frame->Show(TRUE);
return TRUE;
}
node = wxClassInfo::sm_classTable->Next();
}
return FALSE;
}
---------------------------------
以上です。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5132日前に更新/338 KB
担当:undef