【问题标题】:Adding ComboBox within ToolBar in wxWidgets (Windows)在 wxWidgets 的 ToolBar 中添加 ComboBox (Windows)
【发布时间】:2016-02-15 11:58:18
【问题描述】:

我是 wxWigets 库的初学者。我无法在 wxToolbar 中添加组合框。谁能帮我?代码编译得很好,但是当我将 wxComboBox 添加到其中时,容器窗口无法正确显示。

CFrame* itemCMultiFrame1 = this;
wxBitmap* toolsBitmaps[1];
toolsBitmaps[0] = new wxBitmap(open_xpm);

wxToolBar* toolBar = new wxToolBar(this, 12423, wxDefaultPosition,
    wxDefaultSize, wxTB_NODIVIDER | wxTB_FLAT | wxTB_HORIZONTAL);

wxArrayString strings;
strings.Add(wxT("1"));
strings.Add(wxT("2"));
strings.Add(wxT("3"));
strings.Add(wxT("4"));
wxComboBox* combo = new wxComboBox(this, 12322,wxT("1"), wxDefaultPosition, wxDefaultSize,strings, wxCB_DROPDOWN);
toolBar->AddTool(wxID_SAVE, wxT("open.xpm"), *toolsBitmaps[0], wxT("Select file"), wxITEM_CHECK);
toolBar->AddControl(combo);
toolBar->EnableTool(wxID_SAVE,true);
toolBar->EnableTool(12322, true);
toolBar->SetMargins(0, 0);

wxBoxSizer* itemBoxSizer10 = new wxBoxSizer(wxHORIZONTAL);
itemBoxSizer10->Add(toolBar, 0, wxEXPAND, 0);

toolBar->Realize();
itemCMultiFrame1->SetToolBar(toolBar);

【问题讨论】:

  • 既然您试图将组合框添加到工具栏,那么用指针替换wxComboBox 构造函数中的this(即CFrame 指针)不是很好吗到wxToolBar,在你的情况下是toolBar

标签: c++ windows wxwidgets


【解决方案1】:

toolbar sample 显示了如何做到这一点。

当您尝试了解如何使用 wxWidgets 做某事时,总是尝试查看示例,它们对学习很有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    • 1970-01-01
    • 2021-03-28
    • 2021-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多