【GUIライブラリ】wxWindowsでのひょーん at TECH
[2ch|▼Menu]
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