我有一个QLineEdit
,我将echoMode
设置为QLineEdit::Password
,如下所示:
myLineEdit->setEchoMode(QLineEdit::Password);
显示了项目符号,但对于我的应用而言,它们太小了
我需要像这样使它们变大:
我试图使用这样的样式表来增加字体大小:
myLineEdit->setStyleSheet("QLineEdit { font-size: 20px; }");
这确实使子弹变大,但文本也变大。
如何增加项目符号的大小以保留文本的大小?
答案 0 :(得分:3)
您可以设置一个Unicode字符,使其在lineedit-password-character
中显示一个较大的圆圈:
#include <QApplication>
#include <QFormLayout>
#include <QLineEdit>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWidget w;
auto lay = new QFormLayout(&w);
QLineEdit *normal_le = new QLineEdit;
normal_le->setEchoMode(QLineEdit::Password);
normal_le->setText("Pass");
lay->addRow("Normal: ", normal_le);
for(int i: {9210, 9679, 9899, 11044}){
QLineEdit *le = new QLineEdit;
le->setEchoMode(QLineEdit::Password);
le->setText("Pass");
le->setStyleSheet(QString("QLineEdit[echoMode=\"2\"]{lineedit-password-character: %1}").arg(i));
lay->addRow(QString::number(i), le);
}
w.show();
return a.exec();
}