[界面]知识点笔记

1.界面的杂记

1.按钮QPushButton风格改变,只需修改属性里面的styleSheet

QPushButton { 
border:none;
color:white;
background-image: url(:/action/resources/button.png);
}

 加载背景图片,参考这篇文章
QT界面 添加图片 的2种方式
https://blog.csdn.net/qq_37631516/article/details/104468949

2. 如果 styleSheet里是贴图方式,那边QPushButton的尺寸需要设置

3.问题提示"This file contains top level spacers "


问题现象:

是因为Qt Designer设计界面时,用到了Spacers栏中的窗口控件或者Display Widgets栏中的Horizontal Line等布局有关的控件时,直接保存就可能出现"This file contains top level spacers "

问题答案:

第1种情况: 放在控件中
第2种情况: 与其它控件进行布局成一个整体控件 

4.策略SizePolicy的介绍

SizePolicy: 用于描述一个Widget被resizing(调整大小)的时候,
采用的策略
在QSizePolicy类中定义了七种策略
Fixed : 使用sizeHint,不能更大、不能更小
Minimum: 不得小于sizeHint,可以更大,但不需要更大
Maximum: 不得大于sizeHint,可以更小
Preferred: 优先使用sizeHint,可大可小
Expanding: 使用sizeHint,越大越好

MinimumExpanding: 不得小于sizeHint,越大越好
Ignored: 忽略sizeHint,越大越好 

5.打开一个图片并且显示

三、QT例子-打开一个图片并且显示 
https://www.cnblogs.com/fantianliang/p/12356131.html

6.QT多边形、矩形、圆形等API函数

QT 基本图形绘制
https://blog.csdn.net/lwbeyond/article/details/41479809

7.加载资源文件qrc(UI 图片) 

 问题现象:

在控件按钮的styleSheet里拷贝一样的样式代码
见" 1.按钮QPushButton风格改变,只需修改属性里面的styleSheet"
但是没有图片出现

问题答案:

是因为没有将资源文件导入进来

8.QImage::scaled的作用

QT学习之QImage::scaled
https://www.cnblogs.com/qixianyu/p/6891054.html

使用的例子: 

 QImage imageOrg;
 QImage image;
 QRect drawingRect;

 //加载图片
 imageOrg.load(":/action/resources/defaultmap.jpg");
 //imageOrg按照控件的大小缩放,然后赋值给image
 //width():控件的宽
 //height():控件的高
 image = imageOrg.scaled(width(), height(),Qt::KeepAspectRatio);
 
//获取image的rect
 drawingRect = d->image.rect();

9.中英文切换

基于vs2013实现qt的中英文翻译
https://blog.csdn.net/lion_cxq/article/details/125511780

 

2.控件的使用 

2.1 [控件]QT 栅格布局(Grid Layout)的使用

先选中要格式化的控件,
然后选择图标
参考这篇文章:
https://blog.csdn.net/yxy244/article/details/96278255

2.2 combo box控件使用要点

//增加item
comboOutputShape->addItem("Rect/Square");
comboOutputShape->addItem("Ellipse/Circle");

//item变化时调用的函数
connect(comboOutputShape, SIGNAL(currentIndexChanged(int)),
            this, SLOT(onOutputShapeChanged(int)));

2.3 pushButton控件使用要点

1.拖入控件pushButton控件
2.修改objectName为pushButton_apply
3.文本显示修改为text为  apply
4.在主类里添加信号和槽
connect( this->ui.pushButton_apply, SIGNAL( clicked() ), this, SLOT(apply()));

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值