获取QLineEdit的文本边距

时间:2014-04-16 07:19:16

标签: c++ qt qlineedit

如何获取QLineEdit的文本边距?

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

enter image description here

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

1 个答案:

答案 0 :(得分:3)

检查paint event of QLineEdit。你可以看到很多东西对它有影响。

除了textMargins之外,还有一些东西会影响你们正在寻找的价值。

  1. 二手风格(见第1861行)
  2. 和字体属性 - 请参阅QFontMetrics::ascentQFontMetrics::descent
  3. 样式值是最重要的输入,您必须找到获取此值的方法(可能需要子类)