如何对齐此文本? \t
不好。
我所看到的(图像)
预期结果(图像)
答案 0 :(得分:4)
我曾经有过这个问题。为了解决该问题,我使用了等宽字体字体。
为了使所有内容对齐(固定字体宽度),我使用了以下这些行:
// Use "monospaced" font:
// ->insure left column alignment, as for the terminal
//
QFont font("monospace");
font.setPointSize(10);
myQTextEdit->setCurrentFont(font);
从我的父窗口小部件中包含一个QTextEdit子窗口小部件。
答案 1 :(得分:2)
此行:
QString str = QString("B%1").arg(_ui->lineEdit->text().toInt(), 3, 10, QChar('0'));
lineEdit->text() = 1 , str = B001
lineEdit->text() = 01 , str = B001
lineEdit->text() = 001 , str = B001
lineEdit->text() = 0001 , str = B001
lineEdit->text() = 12 , str = B012
lineEdit->text() = 123 , str = B123
您可以对其进行调整以供使用。
根据海德评论进行编辑
int main(int argc, char **argv)
{
qint32 a,b,c,d,e;
a = -1;b = 1;c = -1;d = 3;
e = (a*b) + (c*d);
QString str = QString("(%1*%2) + (%3*%4) = %5").arg(a, 2, 10, QChar(' '))
.arg(b, 2, 10, QChar(' '))
.arg(c, 2, 10, QChar(' '))
.arg(d, 2, 10, QChar(' '))
.arg(e);
QTextStream(stdout) << str << endl;
a = -1;b = 2;c = -1;d = 4;
e = (a*b) + (c*d);
str = QString("(%1*%2) + (%3*%4) = %5").arg(a, 2, 10, QChar(' '))
.arg(b, 2, 10, QChar(' '))
.arg(c, 2, 10, QChar(' '))
.arg(d, 2, 10, QChar(' '))
.arg(e);
QTextStream(stdout) << str << endl;
return 0;
}
输出为:
(-1 * 1) + (-1 * 3) = -4
(-1 * 2) + (-1 * 4) = -6