QT知识点总结(二)

1、如果有资源位于一个库中,需要用不带有后缀的 .qrc 文件名为参数调用 Q_INIT_RESOURCE() 来强制初始化资源系统。

2、可以用qobject_cast()动态转换QObject类的类型

3、自定义类型需要使用Q_DECLARE_METATYPE()宏注册,以便它们的值能被保存在QVariant对象中

4、QCoreApplication::sendEvent()(同步)和QCoreApplication::postEvent()(异步队列)把构造好的事件发送给指定的接收者.

5、当使用布局的时候,构建子控件的时候不需要指定parent,布局将会自动的指定parent(使用QWidget::setParent()),使它们成为安装了该布局的界面的子控件

  • QWidget::sizeHint() 返回控件的优先选用的大小
  • QWidget::minimumSizeHint() 返回控件所能有的最小大小
  • QWidget::setSizePolicy() 指定控件所需要的空间

6、QBoxLayout成员函数:

//添加控件到布局,参数:控件 拉伸参数对齐方式
addWidget(QWidget *, int stretch = 0, Qt::Alignment alignment = 0)

//添加控件到布局,参数:控件 拉伸参数
addLayout(QLayout *layout, int stretch)
//设置控件的拉伸参数
setStretchFactor(QWidget *w, int stretch);
setStretchFactor(QLayout *l, int stretch); 

7、QGridLayout:格栅布局
 

//这个单元将从row和column开始,扩展到rowSpan和columnSpan指定的倍数的行和列。如果rowSpan或//columnSpan的值为-1,则窗口部件将扩展到布局的底部或者右边边缘处。
void addWidget(QWidget *, int row, int column, int rowSpan, int columnSpan, Qt::Alignment = 0);
void addLayout(QLayout *, int row, int column, int rowSpan, int columnSpan, Qt::Alignment = 0)

//设置间距
setSpacing(int spacing) //同时设置水平及竖直间距
setHorizontalSpacing(int spacing)
setVerticalSpacing(int spacing) 

8、表单布局(QFormLayout)适用与QLabel及QLineEdit组合情况

QStackedLayout类提供了多页面切换的布局,一次只能看到一个界面。同QStackedWidget

9、QSpacerItem类为布局提供了一个空白区:QSpacerItem(int w, int h, QSizePolicy::Policy hData = QSizePolicy::Minimum, QSizePolicy::Policy vData = QSizePolicy::Minimum)

布局类可以使用addSpaceItem添加一个空白区域

10、QTemporaryFile用于安全地创建一个独一无二的临时文件,且该临时文件将随着QTemporaryFile对象的析构被删除。

11、QCryptographicHash类提供了生成密码散列的方法。

12、可以使用qInstallMessageHandler()输出详细日志

13、使用环境变量QT_MESSAGE_PATTERN或qSetMessagePattern可以改变打印信息的输出格式

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Chiang木

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值