如何在 QLineEdit 的密码模式下使项目符号更大?

How to make bullet points bigger in password mode for QLineEdit?

我有一个 QLineEdit,我这样设置 echoMode to QLineEdit::Password

myLineEdit->setEchoMode(QLineEdit::Password);

显示了项目符号,但它们对于我的应用程序来说太小了:

我需要像这样把它们变大:

我试过使用这样的样式表来增加字体大小:

myLineEdit->setStyleSheet("QLineEdit { font-size: 20px; }");

这确实使项目符号变大了,但文本也变大了。

如何在保持文本大小的情况下增加项目符号的大小?

您可以通过lineedit-password-character设置一个显示较大圆圈的unicode字符:

#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();
}