Qt – Как сделать верхние и нижние индексы в QLineEdit?
-
19-09-2019 - |
Вопрос
Мне нужна возможность использовать верхние индексы и нижние индексы в QLineEdit в Qt 4.6.Я знаю, как создавать верхние и нижние индексы в QTextEdit, как показано ниже, но я не могу понять, как это сделать в QLineEdit, потому что класс не содержит функцию mergeCurrentCharFormat(), как это делает QTextEdit.Пожалуйста помоги.Спасибо
void MainWindow::superscriptFormat()
{
QTextCharFormat format;
format.setVerticalAlignment(QTextCharFormat::AlignSuperScript);
if(ui->txtEdit->hasFocus())
ui->txtEdit->mergeCurrentCharFormat(format);
}
Решение
QLineEdit
на самом деле не был создан для подобных вещей, поскольку был разработан для простого ввода текста.Однако у вас есть несколько вариантов.Самый простой — сделать, как предложил Hostile Fork, и использовать QTextEdit
, и добавьте переопределение стиля, чтобы не отображать полосу прокрутки (что, как я предполагаю, приведет к удалению стрелок).Более сложным было бы либо наследовать QLineEdit
и нарисуйте свой собственный рисунок или полностью создайте свой собственный виджет, похожий на QLineEdit
да.