个人学习QT问题收集整理稿
2013-10-10 00:12
411 查看
一、QT中文乱码
目前试了两种方法
一:QStringLiteral
C/C++ code
二:
C/C++ code
三:现在主要用第三种
QT5.1.1中文乱码肯定是编码格式不是utf-8的。如果是UTF-8的直接用就可以显示中文了。连tr()那些都不用加的。
QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
这个函数已经移除了在QT5.1中,所以tr()已经没用了。如果乱码了打开源代码的时候肯定会让你选择一种编码格式。一般选择GBK然后代码中就可以显示中文了不再乱码了。但编译出来后软件界面中文肯定还是乱码的。这时选择 编辑--->选择编码--->UTF-8 然后选择按编码保存。源码全部保存成UTF-8的编译执行后软件就不会乱码了。把老版本的那些tr()处理中文乱码的都去掉了可以。
四:在有中文的.cpp 或者.h文件中加入如下代码
二、QT布局
在水平或垂直布局中,如何设置各个控件所占的比例?
选中该LayOut对象,在LayOut属性中,设置layoutStretch。会发现在该layout中有几个控件,这个属性中就有几个数字,默认为0.0.0。改变这些数字比例就可以设置各个控件的填充比例了。
三、项目路径中一定不要出现中文
无论是创建的还是添加的项目路径中都不要出现中文路径,否则编译时无法通过的
四、QT提供了一种默认信号-槽对应关系
QT提供了一种默认信号-槽对应关系:on_控件名称_信号函数名称(参数列表).当定义了这样的函数后,QT会将函数自动与界面控件的信号相关联,当控件触发了相关事件后这个函数将会被触发.
另外一种方式是直接使用QObject::connect函数来关联信号和槽.语法为:
connect(发出信号的对象指针,SIGNAL(信号函数原型), 响应信号的对象, SLOT(槽函数原型));
五、QT5修改自动补全快捷键
![](https://img-blog.csdn.net/20131103210706359?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcWluZzY2Njg4OA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
QT禁用最大化按钮 和 禁止调节窗口大小
修改生成文件的目录为工程的当前目录下。默认生成在工程目录相同的目录不便于管理。
![](https://img-blog.csdn.net/20171122224533711?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcWluZzY2Njg4OA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
如果只生成debug和release文件则用下设置
修改为
如果是以前的项目则删除XXXXXXX.pro.user文件,重新用QtCreate打开。
目前试了两种方法
一:QStringLiteral
C/C++ code
C/C++ code
QT5.1.1中文乱码肯定是编码格式不是utf-8的。如果是UTF-8的直接用就可以显示中文了。连tr()那些都不用加的。
QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
这个函数已经移除了在QT5.1中,所以tr()已经没用了。如果乱码了打开源代码的时候肯定会让你选择一种编码格式。一般选择GBK然后代码中就可以显示中文了不再乱码了。但编译出来后软件界面中文肯定还是乱码的。这时选择 编辑--->选择编码--->UTF-8 然后选择按编码保存。源码全部保存成UTF-8的编译执行后软件就不会乱码了。把老版本的那些tr()处理中文乱码的都去掉了可以。
四:在有中文的.cpp 或者.h文件中加入如下代码
//源代码编码必须是: UTF-8(BOM) #if _MSC_VER >= 1600 #pragma execution_character_set("utf-8") #endif
二、QT布局
在水平或垂直布局中,如何设置各个控件所占的比例?
选中该LayOut对象,在LayOut属性中,设置layoutStretch。会发现在该layout中有几个控件,这个属性中就有几个数字,默认为0.0.0。改变这些数字比例就可以设置各个控件的填充比例了。
三、项目路径中一定不要出现中文
无论是创建的还是添加的项目路径中都不要出现中文路径,否则编译时无法通过的
四、QT提供了一种默认信号-槽对应关系
QT提供了一种默认信号-槽对应关系:on_控件名称_信号函数名称(参数列表).当定义了这样的函数后,QT会将函数自动与界面控件的信号相关联,当控件触发了相关事件后这个函数将会被触发.
另外一种方式是直接使用QObject::connect函数来关联信号和槽.语法为:
connect(发出信号的对象指针,SIGNAL(信号函数原型), 响应信号的对象, SLOT(槽函数原型));
五、QT5修改自动补全快捷键
QT禁用最大化按钮 和 禁止调节窗口大小
setWindowFlags(windowFlags()& ~Qt::WindowMaximizeButtonHint); setFixedSize(this->width(), this->height());
修改生成文件的目录为工程的当前目录下。默认生成在工程目录相同的目录不便于管理。
如果只生成debug和release文件则用下设置
../build-%{CurrentProject:Name}-%{CurrentKit:FileSystemName}-%{CurrentBuild:Name}
修改为
./%{CurrentBuild:Name}
如果是以前的项目则删除XXXXXXX.pro.user文件,重新用QtCreate打开。
相关文章推荐
- Java知识图谱收集整理(学习路线等问题)
- 个人收集整理的一些学习shader的网站/博客(不定时更新)
- 关于Qt使用windeployqt发布相关问题解决办法--个人整理
- 【个人学习笔记8之--关于OVER子句 多属性的比较 PIVOT 聚合问题】
- 遇到Qt调用dll问题(整理版)
- jmeter个人学习之路--常见问题及解决方案
- 架设个人服务器----网乐收集整理全教程篇(内网,公网)
- 个人遇到的QT中文编码问题
- iOS10适配问题收集整理
- 个人网络学习资源收集
- qt学习3——vs版qt出现的问题
- 一些遇到的Qt程序在Windows平台间移植问题整理
- 【opencv学习之三】opencv与qt图像格式交换调试问题和补充(IplImage-->QImage)
- Matlab 线性规划问题(来自CSDN by WC 1.7.2016 用于个人学习)
- qt开发中遇到的问题整理五
- ES6个人学习整理(八)——Class
- 从问题看本质:socket到底是什么?及socket,端口,进程问答(收集整理)
- Oracle字符集问题整理 (学习心得与网摘总结)
- qt 在linux环境下的搭建 (自己整理) 分类: 嵌入式开发学习 2011-04-29 20:54 6033人阅读 评论(0) 收藏
- matlab学习中遇到的问题整理