在BuildTree项目中添加GridSelection对话框

  本文演示在“一棵树的构建”中添加GridSelection对话框的过程,在开始工作之前,读者应该仔细阅读教材第21章的内容,并完成所有前期准备工作。

版权声明

本文可以在互联网上自由转载,但必须:注明出处(作者:海洋饼干叔叔)并包含指向本页面的链接。

本文不可以以纸质出版为目的进行改编、摘抄。

1. 在BuildTree中添加对话框

  在Qt Creator中用鼠标右键点击BuildTree项目名,在弹出的菜单中选择Add New…

image-20220420224839227


  选择Qt/Qt设计师界面类,然后点Choose按钮。

image-20220420225014856


  选择Dialog without Buttons(没有按钮的对话框),然后点下一步。

image-20220420225133832


  类名修改为GridSelection,然后点击下一步按钮。

image-20220420225245579


  然后选择完成。

image-20220420225354387


2. 编辑对话框界面

  接下来,Qt Creator自动进行gridselection.ui的编辑状态。从WidgetBox拖一个QTableWidget(表格窗口)、一个QPushButton至GridSelction。保持QTableWidget的名字tableWidget不变,将QPushButton对象的名字改为pbCancel,pbCancel的text修改为“Close”。如Object Inspector所示,GridSelection对话框的类型为QDialog。

image-20220420225715563


  在Property Editor中对tableWidget进行如下属性修改。

属性 修改
rowCount(行数) 10
columnCount(列数) 10
verticalScrollBarPolicy(纵向滚动条策略) ScrollBarAlwaysOff(总是不显示滚动条)
horizontalScrollBarPolicy(横向滚动条策略) ScrollBarAlwaysOff(总是不显示滚动条)
horizontalHeaderVisible(是否显示横向标题栏) 去除勾选(即不显示)
verticalHeaderVisible(是否显示纵向标题栏) 去除勾选(即不显示)
alternatingRowColors(交替的行颜色) 勾选(即让相邻行颜色不同)
selectionMode(选择模式) SingleSelection(单选)
字体族 Consolas
点大小 12
palette(调色板) 尝试着调整调色板,让表格的颜色、线色等变成自己觉得舒服的颜色

  在Property Editor中对pbCanel进行如下修改。

属性 修改
字体族 Consolas
点大小 14

  然后将GridSelection对象的宽度和高度调整为500和400,并把tableWidth以及pbCanel的位置和大小调整到看起来比较舒服,如下图所示:

image-20220420235706497

  选择文件/Close “gridselection.ui”菜单关闭文件,如果Qt Creator询问是否保存,选择“Save All”(保存所有)。

image-20220420235733855


  回到项目结构树,会发现项目中增加了三个文件,分别是:gridselection.ui, gridselection.h以及gridselection.cpp。

image-20220420233052199


  接下来,请回到纸质教材,我们开始编辑gridselection.h以及gridselection.cpp的代码。