notebook控件一般用于Frame搭建中水平层面上扩展界面的数据存储空间。

例如:
在Frame上需要构建四个页签分别显示“主界面”、“需求查询”、“我的创建”和“待处理”信息,这时候可以使用notebook控件实现Frame在不同页签上面的切换操作。

notebook控件具体属性及方法介绍:https://docs.wxpython.org/wx.Notebook.html?highlight=notebook#wx.Notebook
1. 使用AddPage方法创建新的页签

根据notebook控件的上述介绍可以看出,我们可以使用AddPage或者InsertPage方法创建新的页签。
使用概率比较高的是AddPage方法

AddPage方法应用场景:设计一个开发及测试管理系统,需要将开发和测试的修改记录按照流程顺序记录在同一个Frame里面。这个需求涉及到多个相同页签的建立,因为开发修改记录页签和测试修改记录页签可以存在多个,但是多个之间的页签内容结构可以是相同的。
程序实现:开发修改记录页签用面板Page搭建,测试修改记录页签也使用面板Page搭建。不同Page间使用AddPage方法按照一定的流程规则依次新增到notebook上。
例如:

2. 使用GetPageCount方法获取当前Frame中notebook页签的个数
GetPageCount方法应用场景:还是以需要设计一个开发及测试管理系统为例,根据当前notebook中页签的个数确认开发及测试流程处于哪个阶段,从而保存相应的数据。
实例运用的代码片段如下:
# 获取当前notebook上有几个页签
page_num = self.m_notebook5.GetPageCount()
if page_num == 1:
# 开发记录
sheet_name = "开发记录"
next_executor, upload_file_list = self.save_develop(self.m_panel1, sheet_name="开发记录", sheet_idx=2)
elif page_num == 2:
# 项目管理记录
sheet_name = "项目管理记录"
next_executor, upload_file_list = self.save_manage(self.m_panel2, sheet_name="项目管理记录", sheet_idx=3)
elif page_num == 3:
# 测试记录
sheet_name = "测试记录"
next_executor, upload_file_list = self.save_test(self.m_panel3, sheet_name="测试记录", sheet_idx=4)
513

被折叠的 条评论
为什么被折叠?



