34、wxWidgets小部件之wxNoteBook

2024-01-27 17:58
文章标签 34 部件 wxwidgets wxnotebook

本文主要是介绍34、wxWidgets小部件之wxNoteBook,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 一、Grid控件类

class MyGrid:public wxGrid
{
public:
    MyGrid(wxNotebook* parent);
};

MyGrid::MyGrid(wxNotebook* parent)
    :wxGrid(parent,-1)
{
    CreateGrid(30,30);
    SetRowLabelSize(50);
    SetColLabelSize(25);
    SetRowLabelAlignment(wxALIGN_RIGHT,wxALIGN_CENTER);
    SetLabelFont(wxFont(9,wxFONTFAMILY_DEFAULT,wxFONTSTYLE_NORMAL,wxFONTWEIGHT_BOLD));

    for (int i=0;i<30;i++)
    {
        this->SetRowSize(i,25);
    }
}
 

二、NoteBook类 

class Simple:public wxFrame
{
public:
    Simple(const wxString& title);
protected:
    void OnQuit(wxCommandEvent& event);
};


Simple::Simple(const wxString& title)
    :wxFrame(NULL,-1,title)
{
    wxImage::AddHandler(new wxPNGHandler);
    wxImageList* ilMain = new wxImageList(16,16);
    ilMain->Add(wxBitmap("add.png",wxBITMAP_TYPE_PNG));
    ilMain->Add(wxBitmap("del.png",wxBITMAP_TYPE_PNG));
    ilMain->Add(wxBitmap("edit.png",wxBITMAP_TYPE_PNG));


    wxNotebook* nb= new wxNotebook(this,-1,wxPoint(-1,-1),wxSize(-1,-1),wxNB_TOP);
    nb->SetImageList(ilMain);

    wxMenuBar* mbMain = new wxMenuBar;
    wxMenu* mnFile = new wxMenu;
    wxMenuItem* miQuit = new wxMenuItem(mnFile,-1,wxT("退出"));
    mnFile->Append(miQuit);
    mbMain->Append(mnFile,wxT("文件"));
    SetMenuBar(mbMain);

    Bind(wxEVT_COMMAND_MENU_SELECTED,Simple::OnQuit,this,miQuit->GetId());

    MyGrid* grid1 = new MyGrid(nb);
    MyGrid* grid2 = new MyGrid(nb);
    MyGrid* grid3 = new MyGrid(nb);

    nb->AddPage(grid1,wxT("标签1"));
    nb->SetPageImage(0,0);
    nb->AddPage(grid2,wxT("标签2"));
    nb->SetPageImage(1,1);
    nb->AddPage(grid3,wxT("标签3"));
    nb->SetPageImage(2,2);

    nb->SetSelection(2);//调用此函数会产生页面更改事件
    nb->ChangeSelection(1);//调用此函数不产生页面更改事件

    CreateStatusBar();

    Centre();
}

void Simple::OnQuit(wxCommandEvent& event)
{
    Close(true);
}

这篇关于34、wxWidgets小部件之wxNoteBook的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/651048

相关文章

BUUCTF(34)特殊的 BASE64

使用pycharm时,如果想把代码撤销到之前的状态可以用 Ctrl+z 如果不小心撤销多了,可以用 Ctrl+Shift+Z 还原, 别傻傻的重新敲了 BUUCTF在线评测 (buuoj.cn) 查看字符串,想到base64的变表 这里用的c++的标准程序库中的string,头文件是#include<string> 这是base64的加密函数 std::string

『功能项目』武器的切换实例【34】

本章项目成果展示 我们打开上一篇33战士的A键连击的项目, 本章要做的事情是按键盘E键切换职业时切换手中的武器 首先在资源商店下载免费的武器模型 创建一个空物体 命名为WeaponPos 将武器预制体拖拽至WeaponPos (注意调整空物体位置就可以后续文章会更换武器) 隐藏两把武器 运行项目 隐藏装备 在资源商店

生信软件34 - 大幅提升Python程序执行效率的工具Pypy

在生信开发过程中,会大量使用Python脚本,除了多进程和多线程编程提高程序运行效率外,还可以借助效率更高的Python解释器来提高程序的运行速度, CPython 使用c语言实现的解释器, PyPy 使用python语言的子集RPython实现的解释器,一般情况下PyPy比CPython快4倍左右。 1. 比较解释器的运行效率 # task.pyimport timedef compute

LeetCode - 34. Search for a Range

34. Search for a Range  Problem's Link  ---------------------------------------------------------------------------- Mean:  给定一个有序数组和一个数k,求k在这个数组中的起始下标和结束下标. analyse: 二分查找. Time comple

使用wxWidgets中的wxXmlDocument来对一个xml文件操作

如何操作一个XML,使用wxWidgets ? 可以使用一下方法: wxXmlDocument doc;wxString str_filename =file;if(false == doc.Load(str_filename)){return;}wxXmlNode* root = doc.GetRoot();wxXmlNode* child_root = root->GetChildr

使用wxWidgets如何获得所有的字体

如果想使用wxWidgets获得字体列表:可以使用以下方法 wxFontEnumerator myFonts;wxArrayString strFontNames;wxFontEncoding encoding = wxFONTENCODING_DEFAULT;//wxFONTENCODING_SYSTEM;strFontNames = myFonts.GetFacenames(enco

如何使用wxWidgets跨平台界面库来编写一个对话框窗口?

如题: 这是一个窗口类,调用方法是: ++++++ wxString fontname = new_tab_->GetFontName(); //wxT("System");DlgFontName *dlg_fontname = new DlgFontName(this,fontname);if (dlg_fontname->ShowModal() == wxID_OK){fontn

认知杂谈34

今天分享 有人说的一段争议性的话 I 环境的影响 I 首先得说说,环境这东西对人的影响真不是盖的。你要是老待在一个死气沉沉的地方,那你的激情和梦想,可能慢慢就会被磨得平平无奇。 I 激情的消逝 I 本来你可能是满怀激情,想要大干一场,但时间一长,那些日常的琐事就像小浪花一样,慢慢把你的激情拍散了。 I 生活的妥协 I 然后你可能就觉得,生活嘛,不就是得过且过,吃喝玩乐,遇到问题就随便应付一下

<Rust>egui学习之小部件(九):如何在窗口中添加下拉列表combobox部件?

前言 本专栏是关于Rust的GUI库egui的部件讲解及应用实例分析,主要讲解egui的源代码、部件属性、如何应用。 环境配置 系统:windows 平台:visual studio code 语言:rust 库:egui、eframe 概述 本文是本专栏的第九篇博文,主要讲述下拉列表部件combobox的使用。 事实上,类似于iced,egui都提供了示例程序,本专栏的博文都是建立在官方示

java34: 流

输入流 读 输出流 写 按照是否直接与特定的地方(磁盘,内存,设备)相连  节点流 低级流 可以从或向一个特定的覅放读写数据 处理流 高级流 处理另外一个流     不能独立存在(构造方法中需要传入另外一个流),     处理另外一个流     简化读写 按照处理的单位的不同分为 字节流 一次读写一个字节 字符流 一次读写一个字符 InputStream 和OutputStream