获取QLineEdit的文本边距

sas*_*alm 6 c++ qt qlineedit

如何获取QLineEdit的文本边距?

请注意屏幕截图中的红线,这是我感兴趣的边距:

在此输入图像描述

我尝试qDebug() << ui->lineEdit->textMargins();从屏幕截图中编辑框,但它打印出来QMargins(0, 0, 0, 0),即使编辑框确实有边距.

Mar*_*k R 3

检查QLineEdit 的绘制事件。正如你所看到的,很多东西都会对其产生影响。

此外,textMargins还有一些东西可能会影响您正在寻找的价值观。

  1. 使用的样式(参见第 1942 行)
  2. 和字体属性 - 请参阅QFontMetrics::ascentQFontMetrics::descent

样式值是最重要的,你必须找到方法来获取这个值(可能需要子类)。