QT4编程过程中遇到的问题及解决办法
1、QLineEdit显示内容的格式函数:
QLineEdit *lineEditPassword = new QLineEdit;
lineEditPassword -> setEchoMode(QLineEdit::Password);
注:
QLineEdit::Normal0 Display characters as they are entered. This is the default.
QLineEdit::NoEcho1 Do not display anything. This may be appropriate for passwords where even the length of the password should be kept secret.
QLineEdit::Password2 Display asterisks instead of the characters actually entered.
QLineEdit::PasswordEchoOnEdit3 Display characters as they are entered while editing otherwise display asterisks.
2、设置窗体大小:
(1)this->setFixedSize(width,height); //设置窗体固定大小
(2)this->resize(QSize(320,240));
(3)QSize Mywindow::sizeHint() const
{
return QSize( 800, 600 );
}
注意:要#include<QSize>
3、qss的设置使用:
(1)建立文本文件,写入样式表内容,更改文件后缀名为qss;
(2)在工程中新建资源文件*.qrc,将qss文件加入资源文件qrc中,此处注意prefix最好为"/",否则在调用qss文件时会找不到文件;
(3)通过传入路径\文件名的方式创建一个QFile对象,以readonly的方式打开,然后readAll,最后qApp->setStyleSheet就可以使qss生效。
qss文件路径及前缀设置如图所示:
我的代码:
QFileqss(":/my.qss");//路径为应用程序所在目录开始
qss.open(QFile::ReadOnly);
QStringqsss=QLatin1String(qss.readAll());
qApp->setStyleSheet(qsss);
qss.close();
注:不知道为什么qApp->setStyleSheet(qss.readALL());不可以
4、在Label部件中显示图片
(1)使用stylesheet:
QLabel*label=newQLabel(this);
label->setStyleSheet("border-image:url(:/fire_red)");//注意路径
(2)
QLabel*label=newQLabel(this);
QStringpath=":/fire_red.png";//相对项目文件
QPixmapimg(path);
label->setPixmap(path);
效果如下:
5、设置坐标
以Label为例:
label->move(20,24);
6、设置大小:
以Label为例:
Label->resize(QSize(46,20));
设置固定大小:
Label->setFixedSize(QSize(46,20));
7、Label中的文字居中:
Label->setAlignment(Qt::AlignCenter);
8、QPushButton设置背景图片:
backPushButton->setFixedSize(QSize(30,30));
backPushButton->setIcon(QIcon(":/back1.png"));
backPushButton->setIconSize(QSize(30,30));
这样设置后按钮大小不变,图片也固定了。
效果如下所示:
9、不能显示中文:
在main.cpp文件中写入
QStringsPath=a.applicationDirPath();
sPath+=QString("/plugins");
a.addLibraryPath(sPath);
QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK"));
注:该段代码加在 QApplicationa(argc,argv);之后
然后在程序的exe目录下拷贝plugins文件夹,就可以了。之前我试过网上的很多方法都不行,有的方法只能显示部分中文。现在这种方法亲身实践可行!!!
10、解决QCalendarWidget不能显示“一二三四五六日”的问题:
QCalendarWidget本地化的过程中,需要显示的进行 setLocale 的设定。
calendar->setLocale(QLocale(QLocale::Chinese,QLocale::China));
calendar->setHorizontalHeaderFormat(QCalendarWidget::SingleLetterDayNames);
效果如下:
11、去掉QMainwindow的标题栏
- MainWindow::MainWindow(QWidget *parent) :
- QMainWindow(parent),
- ui(new Ui::MainWindow)
- {
- ui->setupUi(this);
- this->setWindowFlags(Qt::FramelessWindowHint);//去掉标题栏
- this->setGeometry(QRect(950, 55, 350, 250));//可设置窗口显示的方位与大小
- //this->setWindowOpacity(0.7);//设置透明1-全体透明
- //this->setAttribute(Qt::WA_TranslucentBackground, true);//设置透明2-窗体标题栏不透明,背景透明
- this->resize(300,300);//显示大小
- }
QT4编程过程中遇到的问题及解决办法的更多相关文章
- iOS 学习笔记二【cocopods安装使用和安装过程中遇到的问题及解决办法】【20160725更新】
在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...
- iOS cocopods安装使用和安装过程中遇到的问题及解决办法
在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...
- oracle安装过程中先决条件检查失败的解决办法
1:公司数据库开始用的mysql,因为公司做的是保密性项目,所以就在项目日志过多的时候项目有爆炸的迹象啊(3000千万数据,貌似mysql有点撑不住).然后组长开始让我安装oracle,公司的内网也是 ...
- windows下python-nmap运行过程中出现的问题及解决办法
python-nmap 运行时出现了一下错误 D:\python\untitled5\Scripts\python.exe D:/python/untitled5/test.py Traceback ...
- win10下安装Wampservice过程中遇到的问题及解决办法
今天在电脑上装Wampserver的时候遇到了几个问题,启动Wampserver无法成功,一直显示橙色.若启动成功Wampserver的图标会显示绿色. 下面的是解决方法 安装 在浏览器中搜索Wamp ...
- java web添加mysql过程中遇到的错误及解决办法
问题一:遇到提示找不到驱动 com.mysql.jdbc.Driver 起初项目中是导入了mysql-connector-java-5.1.45-bin.jar 包的,但是一直依然报错,最后去官网 ...
- 记一次wordpress安装过程中遇到的问题及解决办法
Q:无法建立目录wp-content/uploads/2017/03.有没有上级目录的写权限?A:执行chmod 777 wp-content/ 提升目录权限 Q:安装主题或安装插件的时候,用到FTP ...
- ubuntu 安装包过程中遇到的一个错误解决办法
错误提示如下: 将会安装下列额外的软件包: libdigest-hmac-perl libqt5test5下列[新]软件包将被安装: libdigest-hmac-perl下列软件包将被升级: lib ...
- 解锁Scott过程中出现的问题及解决办法
一.conn sys/sys as sysdba; //以DBA的身份登录 出现以下错误 经查 协议适配器错误的问题的原因有三个 监听服务没有起起来.windows平台个一如下操作:开始---程序-- ...
随机推荐
- 【C#】C#委托学习
虽然做.NET这行也快2年了,但基础不太好啊,今天看了下委托方面的知识,记录下. 1.委托 总的来说,委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋 ...
- TextView跑步灯效果及在特殊情况下无效的解决方式
概述: 关于在TextView中使用跑马灯效果的样例在网上一搜一大把.他们可能会让你像以下这样来在xml中定义TextView控件的属性.而事实也确是如此. 只是我不知道他们有没有遇到和我一样的问题( ...
- IE11下javascript报堆栈溢出问题的解决
在IE11浏览器下,使用日期函数里面的toLocaleDateString()会报堆栈溢出 不知道是不是跟我的其他相关代码有关,还是就是这个toLocaleDateString()在IE11确实不太一 ...
- ubuntu server vsftpd 匿名用户上传下载及目录设置
ubuntu server vsftpd 匿名用户上传下载及目录设置 1:vsftpd服务器安装: sudo apt-get install vsftpd #安装 cd /srv/ #切换到默认匿名用 ...
- PHP高级教程-文件
PHP 文件处理 fopen() 函数用于在 PHP 中打开文件. 打开文件 fopen() 函数用于在 PHP 中打开文件. 此函数的第一个参数含有要打开的文件的名称,第二个参数规定了使用哪种模式来 ...
- cp 命令(转)
原文:http://www.cnblogs.com/peida/archive/2012/10/29/2744185.html cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情 ...
- innodb_file_per_table
MySQL InnoDB引擎 默认会将所有的数据库InnoDB引擎的表数据存储在一个共享空间中:ibdata1,当增删数据库的时候,ibdata1文件不会自动收缩,单个数据库的备份也将成为问题.通常只 ...
- oracle 建表时显示ORA-00904无效的标识符
oracle 建表时显示ORA-00904无效的标识符 CreationTime--2018年7月19日16点03分 Author:Marydon 1.情景展示 使用plsql建表时,报错 字段展 ...
- TaskMapper
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-/ ...
- 小白心目中的Java抽象类(abstract class)
在java开发中,我们有时会定义了一个父类,这个父类只有对方法的描述,但却没有在父类中写出对方法的实现,这种被定义的方法称为抽象方法.那么理所当然,含有抽象方法的类就称为抽象类.用关键字abstrac ...