Witam. Mam taki oto kod:
main.hpp
#ifndef MAIN_HPP
#define MAIN_HPP
//--------------------------------------------------------------------------------------------------
#include <wx/wx.h>
#include <wx/aui/aui.h>
//--------------------------------------------------------------------------------------------------
class MyApp : public wxApp
{
public:
virtual bool OnInit();
};
//--------------------------------------------------------------------------------------------------
class MyFrame : public wxFrame
{
public:
// MyFrame();
MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size);
virtual ~MyFrame();
private:
wxPanel *Panelkontr;
wxAuiManager *m_mgr;
wxAuiToolBar *atb;
// wxBitmapButton *btn_add;
// void OnHello(wxCommandEvent& event);
// void OnExit(wxCommandEvent& event);
// void OnAbout(wxCommandEvent& event);
// void OnCaradd(wxCommandEvent& event);
DECLARE_EVENT_TABLE()
};
//--------------------------------------------------------------------------------------------------
enum
{a
ID_AUITOOLBAR1 = 1,
ID_CARADD = 100
};
//--------------------------------------------------------------------------------------------------
wxIMPLEMENT_APP(MyApp);
//--------------------------------------------------------------------------------------------------
#endif
main,cpp
#include "main.hpp"
#include "p_kontr.hpp"
//--------------------------------------------------------------------------------------------------
bool MyApp::OnInit()
{
MyFrame *frame = new MyFrame( "Hello World", wxPoint(50, 50), wxSize(-1, -1) );
frame->Show(true);
return true;
}
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
//EVT_MENU(wxID_EXIT, MyFrame::OnExit)
//EVT_MENU(DO_TEST, MyFrame::DoTest)
//EVT_SIZE(MyFrame::OnSize)
//EVT_BUTTON(BUTTON1, MyFrame::OnButton1)
// EVT_BUTTON(ID_CARADD, MyFrame::OnCaradd)
END_EVENT_TABLE()
//--------------------------------------------------------------------------------------------------
MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size)
: wxFrame(NULL, wxID_ANY, title, pos, wxSize(800,600))
{
m_mgr = new wxAuiManager(this, wxAUI_MGR_DEFAULT);
atb = new wxAuiToolBar(this, ID_AUITOOLBAR1, wxPoint(103,69), wxDefaultSize, wxAUI_TB_DEFAULT_STYLE);
m_mgr->AddPane(atb, wxAuiPaneInfo().Name(_T("PaneName")).ToolbarPane().Caption(_("Pane caption")).Layer(10).Top().Gripper());
atb->Realize();
Panelkontr = new wxPanel(this);
m_mgr->AddPane(Panelkontr, wxBOTTOM);
m_mgr->Update();
}
MyFrame::~MyFrame()
{
m_mgr->UnInit();
}
p_kontr.hpp
#ifndef P_KONTR_HPP
#define P_KONTR_HPP
//--------------------------------------------------------------------------------------------------
#include <wx/wx.h>
//--------------------------------------------------------------------------------------------------
class Panelkontr : public wxPanel
{
public:
Panelkontr( const wxSize &size);
wxTextCtrl *tc;
private:
// wxAuiManager *m_mgr;
// wxAuiToolBar *atb;
// wxBitmapButton *btn_add;
// void OnHello(wxCommandEvent& event);
// void OnExit(wxCommandEvent& event);
// void OnAbout(wxCommandEvent& event);
// void OnCaradd(wxCommandEvent& event);
// DECLARE_EVENT_TABLE()
};
//--------------------------------------------------------------------------------------------------
//enum
//{
// ID_AUITOOLBAR1 = 1,
// ID_CARADD = 100
//};
//--------------------------------------------------------------------------------------------------
#endif
p_kontr.cpp
#include "p_kontr.hpp"
Panelkontr::Panelkontr(const wxSize &size)
: wxPanel(this, wxID_ANY, wxDefaultPosition, wxSize(800,600))
{
tc = new wxTextCtrl(this, wxID_ANY);
tc->AppendText("Red text\n");
}
nie potrafię zmusić programu aby stworzony został element tc na panelu a następnie aby ten panel wyświtlić w głównym oknie programu. gdy stworzę panek i tc w MyFrame::MyFrame plik main.cpp wszystko działa. z osobnego pliku jednak nie