Qt5开发笔记

本文介绍Qt5与Qt4的主要区别,包括QApplication模块变化、数据类型转换方法、字符串操作技巧等,并提供了一些实用代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

QT5.8.0+QT Creator4.2.1

1、Qt4的QApplication在QtGui中,Qt5中的QApplication在QtWidgets

Qt4中:

 

#include <QtGui/QApplication>
#include <QtGui/QLabel>

 
int mian(int argc, char *argv[])
{
    QApplication a(argc,argv);
    QLabel label("1243\n");
    label.show();
    return a.exec();

 
}

Qt5中:

 

 


 
#include <QLabel>
#include <QApplication>

 
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

 
    QLabel label("1243\n");
    label.show();
    return a.exec();
}

 

2、int、float、double转String

 

int i = 200;

QString j = QString::number(i,10);

j = "200"

QString j = QString::number(1,16);

j = "c8";

QString j = QString::number(1,16).toUpper;//大写

j = "C8";

 

还有一种方法:

long a =  63;

QString s = QString("%1").arg(a);

 

3、String转int、float、double、char*

转double:

QString a = "12.55";

double b = a.toDouble();//b = 12.55

 

bool ok;

ok = true;

double a;

a = QString("13.654e-02").toDouble();//a = 0.13654

 

转float:

 

  1. QString str="123.45";  
  2. float d=str.toFloat(); //d=123.45  

 

 

  1. QString str="R2D2";  
  2. bool ok;  
  3. float d=str.toFloat(&ok); //转换是被时返回0.0,ok=false;  

 

转int:

QString j = "123";

int i = j.toInt();

 

 

  1. Qstring str="FF";  
  2. bool ok;  
  3. int dec=str.toInt(&ok,10); //dec=255 ; ok=rue  
  4. int hex =str.toInt(&ok,16); //hex=255;ok=true;  

 

转char*:

 

  1. QString qstr("hello,word");  
  2. const char * p = qstr.toLocal8Bit().data();  

 

 

  1. const char *p = qstr.toStdString().data();  

 

 

 

 

 

 

4、获取当前路径和设置路径

QString path = QDir::currentPath();//当前路径 

QDir::setCurrent("路径");//设置当前路径

 

5、禁止设置窗口大小

构造函数初始化中:

setFixedSize(100,100);

setFixedSize(this->width(),this->height());

 

6、窗口最大化、最小化按钮

main.cpp中,show()前面

隐藏最大化、最小化按钮:

w.setWindowFlags(w.windowFlags() &~ Qt::WindowMaximizeButtonHint);//最大化

w.setWindowFlags(w.windowFlags() &~ Qt::WindowMinimizeButtonHint);//最小化

添加最大化、最小化按钮:

this->setWindowFlags(this->windowFlags()&Qt::WindowMaximizeButtonHint&Qt::WindowMinimizeButtonHint)

 

7、截取字符串

CString::Left(int nCount)const; //从左边1开始获取前 nCount个字符

CString::Mid(int nfirst)const; //从左边第 nfirst+1个字符开始,获取后面所有的字符

CString::Mid(intnFirst,intnCount)const; //从左边第 nFirst+1 个字符开始,获取后面nCount个字符

CStringRight(intnCount)const; //从右边1开始获取从右向左前 nCount个字符

voidMakeUpper(); //这个函数可以将CString字符转化为一个大写的字符串。

 

8、字符串内查找

String.indexOf() 只匹配到第一个合适的,返回位置。

String.lastIndexOf() 是匹配最后一个合适的,返回位置。

 

9、对话框大小设置

 

 setMinimumSize( 200, 120 );//最小大小
 setMaximumSize( 200, 120 );//最大大小

 
setGeometry( 62, 40, 75, 30 );//62,40控件左上角坐标,控件宽75,控件高30

 

 

 

 

 

10、设置应用程序图标(exe和标题图标)

图标ico.ico文件放置在源代码文件中。

在.pro文件最下面添加:RC_ICONS = ico.ico

运行程序

11、(const)QString转换为const char*

a.toStdString().data()//a为const QString,主要为从控件获取数据的类型

12、中文界面上显示乱码

头文件:#include <QStringList>

QStringLiteral("中文内容")//解决乱码显示问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值