wxWidgets学习笔记:Tab页wxNotebook使用详解

1.头文件

cpp 复制代码
#include <wx/notebook.h>

创建notebook

cpp 复制代码
m_NoteBook =
            new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 | wxTAB_TRAVERSAL );

在notebook中添加pannel并

cpp 复制代码
m_PanelConcatAndZ =
            new wxPanel( m_NoteBook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
 wxBoxSizer* bSizerConcatAndZPanel;
    bSizerConcatAndZPanel = new wxBoxSizer( wxVERTICAL );
cpp 复制代码
 m_PanelConcatAndZ->SetSizer( bSizerConcatAndZPanel );
    m_PanelConcatAndZ->Layout();
    bSizerConcatAndZPanel->Fit( m_PanelConcatAndZ );
    m_NoteBook->AddPage( m_PanelConcatAndZ, _( "Concat And Z Conversion" ), true );

在该pannel上面的创建控件

cpp 复制代码
wxStaticText* cztopoloLabel;
    cztopoloLabel = new wxStaticText( m_PanelConcatAndZ, wxID_ANY, _( "Topology:" ),
                                      wxDefaultPosition, wxDefaultSize, 0 );

将notebook添加到布局里面

cpp 复制代码
 bUpperSizer->Add( m_NoteBook, 1, wxEXPAND | wxTOP | wxRIGHT | wxLEFT, 10 );

其中bUpperSizer

cpp 复制代码
 wxBoxSizer* bUpperSizer;
 bUpperSizer = new wxBoxSizer( wxVERTICAL );

将第一个page设置为默认选择

cpp 复制代码
// 将第一个page设置为默认选择
notebook->SetSelection(0);

总结

cpp 复制代码
#include <wx/notebook.h>
#include <wx/panel.h>
  wxPanel* m_PanelDispaly =new wxPanel( m_NoteBookTran, wxID_ANY, wxDefaultPosition,      wxDefaultSize, wxTAB_TRAVERSAL );
    wxBoxSizer* bSizerDisplay = new wxBoxSizer( wxVERTICAL );
	m_PanelDispaly->SetSizer( bSizerDisplay );
    m_PanelDispaly->Layout();
    bSizerDisplay->Fit( m_PanelDispaly );
    m_NoteBookTran->AddPage( m_PanelDispaly, _( "Display" ), true );
// 将第一个page设置为默认选择
notebook->SetSelection(0);
    bMainSizer->Add( m_NoteBookAC, 1, wxEXPAND, 5 );
相关推荐
带娃的IT创业者3 天前
LocalSend:重新定义跨平台文件传输的开源利器
开源·跨平台·文件传输·airdrop·localsend
深念Y7 天前
从0到1:推拿头疗店ERP系统的需求分析与架构设计全复盘
物联网·需求分析·跨平台·saas·数字化·项目·erp
CSharp精选营7 天前
Avalonia UI:.NET 跨平台桌面开发的“真香”选择
.net·跨平台·avalonia·桌面开发·ui框架
王江奎9 天前
Windows 跨平台 C/C++ 项目中的 UTF-8 路径陷阱
c++·windows·跨平台
Ulyanov9 天前
《PySide6 GUI开发指南:QML核心与实践》 第二篇:QML语法精要——构建声明式UI的基础
java·开发语言·javascript·python·ui·gui·雷达电子对抗系统仿真
REDcker10 天前
跨平台编译详解 工具链配置与工程化实践
linux·c++·windows·macos·c·跨平台·编译
Ulyanov11 天前
《玩转QT Designer Studio:从设计到实战》 QT Designer Studio状态机深度应用:智能待办事项管理系统
开发语言·python·qt·gui·雷达电子对抗系统仿真
charlie11451419114 天前
通用GUI编程技术——图形渲染实战(三十三)——Direct2D与Win32/GDI互操作:渐进迁移实战
c++·图形渲染·gui·win32
月巴月巴白勺合鸟月半14 天前
从 Delphi 到 FMX:Borland/Embarcadero 跨平台开发三十年兴衰史
跨平台·delphi
charlie11451419118 天前
通用GUI编程技术——图形渲染实战(三十一)——Direct2D效果与图层:高斯模糊到毛玻璃
c++·图形渲染·gui·win32