QT控件中布局QLabel让其自适应大小自动换行遇到的问题

使用QLabel的时候总会有一些小问题,这里记录一下,如果您有更好的解决办法请告诉我一下,3Q。

给QWidget控件添加边框同时不影响其子控件QLabel:分别设置widget控件和label控件的style

    widget->setStyleSheet("QWidget{border:1px; "  //设置边框宽度
                        "border-style:solid;" //设置边框风格
               "border-color:black;"  //设置边框颜色
                        "background: red;}"); //设置widget背景色
    label->setStyleSheet("QLabel{border-width:0px}"); //让label控件的边框大小设置为0
把label放在布局中让其自适应大小自动换行的时候遇到了一个没有解决的问题,一下是设置的代码,

        label->setText(strLine); 
        label->adjustSize();
        label->setWordWrap(true);
        label->setAlignment(Qt::AlignTop);

        QPalette palette; 
        palette.setColor(QPalette::Text, Qt::white); //设置字体颜色
        label->setPalette(palette);
        gLayout->addWidget(label);
        label->show();

刚开始的时候,用的测试string都是一些纯字母或者纯数字啥的,下图中string是从一个Qtextedit中提取出来的,但是一直都不行,总是不能自适应大小,显示的只有一行,但是在里面加入了中文后就可以实现自适应大小,自动换行了,这个真没搞懂是什么原因,看到的朋友请指点一下!


你可能感兴趣的:(Qt)