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 );
相关推荐
k4m7v2pz5 天前
用 Rust 重造 Java 的 CLI 分发体验:从 java -jar 到 wasmtime run
rust·跨平台·webassembly·wasmtime·wasi·java-jar
界面开发小八哥12 天前
界面控件DevExpress XAF v26.1新版亮点——AI Agent Skills
ai·c#·跨平台·devexpress·ui开发·xaf
buhuizhiyuci12 天前
【QT-百日筑基篇】修真世界摸爬滚打多年,终于黄天不负有心人,突破炼器中期——常用控件QWight的属性
开发语言·c++·qt·gui·图形化
微小冷20 天前
pyQT中的文本部件及其区别
pyqt·gui·富文本编辑器·文本输入框·文本浏览器
沫璃染墨1 个月前
《Qt从零入门系列(一):Qt框架初识——从发展历史到跨平台开发》
c++·qt·系统架构·gui
天天进步20151 个月前
UI-TARS 源码解析 #18:drag 与 scroll 源码解析:复杂 GUI 操作如何落到 pyautogui?
gui
寒水馨1 个月前
macOS下载、安装PowerShell-v7.6.4(附安装包powershell-7.6.4-osx-arm64.pkg)
macos·自动化·跨平台·shell·脚本·命令行·powershell
寒水馨1 个月前
Linux下载、安装PowerShell-v7.6.4(附安装包powershell-7.6.4-linux-x64.tar.gz)
linux·跨平台·自动化运维·devops·命令行·powershell·脚本语言
栈溢出的浪漫1 个月前
码界领航:Python拓界-机器学习Web跨平台
python·机器学习·跨平台·web开发·个人项目
寒水馨1 个月前
macOS下载、安装godot-4.7.1-stable(附安装包Godot_v4.7.1-stable_macos.universal.zip)
macos·3d·游戏引擎·godot·跨平台·游戏开发·2d