gpt4 book ai didi

c++ - 获取 QTextEdit 中每行的大小

转载 作者:行者123 更新时间:2023-12-01 21:37:16 25 4
gpt4 key购买 nike

嗨,我是 Qt 编程新手,我想知道如何获取 QTextEdit 中每行的大小。

更新:
我需要获取文本中每一行(行)的宽度,而不是 QTextEdit 中所有文本的宽度。

最佳答案

已更新

如果您想获取文本的大小(宽和高)(以像素为单位)以及QTextEdit中每个字符串的长度,您可以这样做:

// split all text into list of strings by separator '\n' (new line symbol)
QStringList strLst = ui->textEdit->toPlainText().split('\n');
// gather font metrics in QTextEdit
QFont textEditFont = ui->textEdit->font();
QFontMetrics fm(textEditFont);
foreach (QString str, strLst)
{
int pixelsWide = fm.width(str);
int pixelsHigh = fm.height();
qDebug() << QString("Row: %1:\n\tsymbols count = %2,\tpixels wide = %3,"
"\tpixels high = %4")
.arg(str)
.arg(str.length())
.arg(pixelsWide)
.arg(pixelsHigh);
}

关于c++ - 获取 QTextEdit 中每行的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13270016/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com