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);
浙公网安备 33010602011771号