Qt控件及其属性

QWidget是所有可视化控件的基类

  • 它是一个空白控件
  • 控件是界面的最小元素
  • 每个控件都是矩形,按照z轴排序
  • 控件会被上面的控件遮挡、或被父控件剪切
  • 没有父控件的控件被称为窗口
  • 组合控件(Composite Widget),当一个控件被用作一个容器去容纳多个子控件时,这个控件就被称为组合控件。(父子关系)

布局Layout

属性

作用

布局管理器到界面上下左右的距离

layoutSpacing

设置各子部件间的距离

layoutStretch

伸缩因子

layoutSizeConstraint

设置大小约束条件

setDefaultConstraint

主窗口大小设置为minimumSize()的值,除非该部件已有一个最小值

setFixedSize

setMinimumSize

setMaximumSize

setMinAndMaxSize

setNoConstraint

部件不被约束

窗口部件管理器Form Layout

专门用来快速添加表单的,通过双击该部件,出现这个弹窗

,即可快速添加。

弹簧spacer

按钮Button

项视图Item View

List View :清单视图、Tree View :树视图、Table View :表视图、Column View :列视图、Undo View :撤销列表

项控件Item Widget

QTableWidget

看似有两行两列的表格,实则通过拖出的控件,每个单元格是没有Item指针!

qDebug() << ui->tableWidget->item(0, 0)->text();输出0x00,说明是空指针。

另外,用鼠标点击控件添加的行或列,实际等同下面代码
ui->tableWidget->setColumnCount(数量);
ui->tableWidget->setRowCount(数量);

也就是说,在没有为tableWidget设置行列时,new出来的QTableWidgetItem,使用setItem,依旧没有用。

总结:先有QTableWidget,再有行列,然之后有每个单元格Item。不然,将获取空指针。

在应用上,对控件添加列表头信息,用代码动态添加行,添加每个Item,依此生成表格。

setSectionResizeMode

setSectionResizeMode(1, QHeaderView::ResizeToContents);对列设定,根据单元格内容设置宽度,见下图。列1没有被压缩。

setCellWidget

删除TableWidget,并不会自动释放传入的控件!!!

删除所有行

需要从后往前删

容器Container

QFrame

属性

作用

展开里的

frameShape

边框形状

NotFrame:无边框

Box:有边框

Panel:面板,使内容表现为凸起或凹陷

WinPanel:Windows2000面板形式

HLine:水平线

VLine:垂直线

StyledPanel:样式面板,效果依赖当前GUI样式

frameShadow

边框阴影

Plain:平面的,无3D效果

Raised:凸起的,边框和内容表现为凸起

Sunken:凹陷的,边框和内容表现为凹陷

lineWidth

线宽

midLineWidth

在边框中额外插入一条线的宽度,为了形成3D效果,并且只有在设置Box、HLine、VLine有用

lineWidth与midLineWidth组合的效果:

输入控件Input Widget

Combo Box

Line Edit

readonly,让光标不显示

展示控件Display Widge

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值