如何使用wxWidgets制作类似的界面?
How to make a similar interface using wxWidgets?
如何使用wxWidgets制作类似的界面?
我需要动态创建文本字段。我知道如何用 Delphi gitHub 来做到这一点。但是如何使用 C++ 和 wxWidgets 来实现呢?
这是我的代码。我不知道该怎么办
Simple::Simple(const wxString& title)
: wxFrame(NULL, wxID_ANY, title, wxDefaultPosition, wxSize(270, 450))
{
wxBoxSizer *hbox = new wxBoxSizer(wxVERTICAL);
for (int i = 0; i < 25; i++)
{
hbox->Add(new wxListBox(this, wxID_ANY, wxDefaultPosition, wxSize(250, 60)), wxSizerFlags(0).Border(wxALL, 5));
auto itm = hbox->GetItem(i);
itm->SetId(i);
}
SetSizer(hbox);
}
@Nindzzya,
基本上你创建了一个wxFrame。你在里面放了一个 wxScrolled<> 的实例。然后在这个 wxScrolled<>() 中放置一个垂直的 wxBoxSizer。然后最后在该 sizer 中添加适当的控件。
按照你的例子:
for (auto i = 0; i < 25; i++)
{
textctrl[i] = new wxTextCtrl( this, wxID_ANY, wxDefaultPosition, wxSize( 250, 60 ), wxSizerFlags( 0 ).Border( wxALL, 5 ) )
hbox->Add( textctrl[i] );
}
MyFrame::Some_Func()
{
for( auto i : { 0, 25 } )
{
textctrl[i]->GetValue();
}
}
您甚至不需要 ID 或类似的东西。这个问题是关于基本 C++ 的。它与wxWidgets没有任何关系。
如何使用wxWidgets制作类似的界面
这是我的代码。我不知道该怎么办
Simple::Simple(const wxString& title)
: wxFrame(NULL, wxID_ANY, title, wxDefaultPosition, wxSize(270, 450))
{
wxBoxSizer *hbox = new wxBoxSizer(wxVERTICAL);
for (int i = 0; i < 25; i++)
{
hbox->Add(new wxListBox(this, wxID_ANY, wxDefaultPosition, wxSize(250, 60)), wxSizerFlags(0).Border(wxALL, 5));
auto itm = hbox->GetItem(i);
itm->SetId(i);
}
SetSizer(hbox);
}
@Nindzzya,
基本上你创建了一个wxFrame。你在里面放了一个 wxScrolled<> 的实例。然后在这个 wxScrolled<>() 中放置一个垂直的 wxBoxSizer。然后最后在该 sizer 中添加适当的控件。
按照你的例子:
for (auto i = 0; i < 25; i++)
{
textctrl[i] = new wxTextCtrl( this, wxID_ANY, wxDefaultPosition, wxSize( 250, 60 ), wxSizerFlags( 0 ).Border( wxALL, 5 ) )
hbox->Add( textctrl[i] );
}
MyFrame::Some_Func()
{
for( auto i : { 0, 25 } )
{
textctrl[i]->GetValue();
}
}
您甚至不需要 ID 或类似的东西。这个问题是关于基本 C++ 的。它与wxWidgets没有任何关系。