Qt - 如何在QLineEdit中执行上标和下标?

时间:2010-03-11 00:55:36

标签: c++ qt superscript subscript

我需要能够在Qt 4.6的QLineEdit中使用上标和下标。我知道如何在QTextEdit中执行上标和下标,如下所示,但我无法弄清楚如何在QLineEdit中执行它们,因为该类不包含像QTextEdit那样的mergeCurrentCharFormat()函数。请帮忙。感谢

void MainWindow::superscriptFormat()
{
   QTextCharFormat format;
   format.setVerticalAlignment(QTextCharFormat::AlignSuperScript);
   if(ui->txtEdit->hasFocus())
      ui->txtEdit->mergeCurrentCharFormat(format);
}

1 个答案:

答案 0 :(得分:1)

QLineEdit并非真正针对此类事物制作,因为它是为简单的文本输入而设计的。但是,您有几个选择。最简单的是像Hostile Fork建议的那样使用QTextEdit,并添加样式覆盖以不显示滚动条(我假设它会删除箭头)。更复杂的是要么继承QLineEdit并做自己的绘图,要么完全制作出与QLineEdit类似的自己的小部件。