QLabel文本设置行间距

因工作需求,需要使用QLabel显示文本数据,当做完后发现每一行的文本行间距貌似是固定的,并且Qt没有暴露api去设置,所以我们需要手动的加'\n',但是\n只是换行,又不能自定义行间距,经查阅网上资料,发现可以用css完成,代码如下:

        

    /* 以下代码必须要按顺序,否则自动换行/自适应大小可能失败 */

    ui->label->setWordWrap(true);//label自动换行

    QString msg = "111啊啊啊啊啊啊啊啊啊啊啊啊啊1111啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊                                           啊啊111";

    //25px是行间距,意思是每一行间距25个像素,其他的直接复制吧,我对前端语言也不了解
    QString qsShow = "<p style='line-height:25px; width:100% ; white-space: pre-wrap; '>" + msg + "</p>";

    ui->label->setText(qsShow);
    ui->label->adjustSize();//label根据内容自适应大小

猜你喜欢

转载自blog.csdn.net/qq_25704799/article/details/123560360