Qt - Como fazer sobrescrito e subscrito em um QLineEdit?
-
19-09-2019 - |
Pergunta
Eu preciso ter a capacidade de usar sobrescritos ASND subscritos em uma QLineEdit em Qt 4.6. Eu sei como fazer sobrescrito e subscrito em um QTextEdit como visto abaixo, mas eu não consigo descobrir como fazê-los em QLineEdit porque a classe não contém uma função mergeCurrentCharFormat () como QTextEdit faz. Por favor ajude. Graças
void MainWindow::superscriptFormat()
{
QTextCharFormat format;
format.setVerticalAlignment(QTextCharFormat::AlignSuperScript);
if(ui->txtEdit->hasFocus())
ui->txtEdit->mergeCurrentCharFormat(format);
}
Solução
QLineEdit
não foi realmente feita para esse tipo de coisa, como ele foi projetado para entrada de texto simples. Você tem algumas opções, no entanto. O mais simples é fazer como Hostile Fork sugerido e usar um QTextEdit
, e adicione uma substituição de estilo para não mostrar a barra de rolagem (que eu suponho que iria remover as setas). O mais complexo seria quer QLineEdit
herdar e fazer o seu próprio desenho, ou para fazer o seu próprio widget completamente que aparece semelhante à QLineEdit
s fazer.