sosoboy

导航

QT字符转换,中文乱码等随笔记录

1.把QString转换为 double,float,int等类型

bool ok;

double d;

double d=QString("1234.56e-02").toDouble(&ok); //ok=true;d;12.3456.

float f=str.toFloat(&ok); //转换失败时返回0.0,ok=false;

int dec=str.toInt(&ok); 

 

2.Qstring 转换char*问题!

方法一:
QString qstr("hello,word");
const char * p = qstr.toLocal8Bit().data();
方法二:
const char *p = qstr.toStdString().data();

 

3.Qt 让QLabel自适应text的大小,并且自动换行

用户选择的路径和名称都太长了,那么下面在显示的时候就会截断,这就很不爽了。别看这个小问题,这就涉及了2个技巧。

1. 让QLabel自适应text的大小,直接用下面的代码:

LabelName->adjustSize();

2. 让QLabel能够自动判断并换行显示:

LabelName->setGeometry(QRect(328, 240, 329, 27*4));  //四倍行距

LabelName->setWordWrap(true);
LabelName->setAlignment(Qt::AlignTop);

 

posted on 2015-08-10 11:44  sosoboy  阅读(164)  评论(0)    收藏  举报