随笔小记-qss下QLineEdit文字居中

QLineEdit{text-align:center;}

QLineEdit 设置text-align:center; 不起作用。

This property is currently supported only by QPushButton and QProgressBar.

https://doc.qt.io/archives/qt-4.8/stylesheet-reference.html#list-of-properties

解决办法

1

QLineEdit{qproperty-alignment:AlignHCenter;}

2

edit->setAlignment( Qt::AlignHCenter);

任何可被识别的Q_PROPERTY都可以使用qproperty-语法设置。

Q_PROPERTY定义的属性通过QSS按照qproperty-语法的方式设置。

源代码中可以查看有哪些Q_PROPERTY属性

  class Q_WIDGETS_EXPORT QLineEdit : public QWidget
    {
        Q_OBJECT
        Q_PROPERTY(QString inputMask READ inputMask WRITE setInputMask)
        Q_PROPERTY(QString text READ text WRITE setText NOTIFY textChanged USER true)
        Q_PROPERTY(int maxLength READ maxLength WRITE setMaxLength)
        Q_PROPERTY(bool frame READ hasFrame WRITE setFrame)
        Q_PROPERTY(EchoMode echoMode READ echoMode WRITE setEchoMode)
        Q_PROPERTY(QString displayText READ displayText)
        Q_PROPERTY(int cursorPosition READ cursorPosition WRITE setCursorPosition)
        Q_PROPERTY(Qt::Alignment alignment READ alignment WRITE setAlignment)
        Q_PROPERTY(bool modified READ isModified WRITE setModified DESIGNABLE false)
        Q_PROPERTY(bool hasSelectedText READ hasSelectedText)
        Q_PROPERTY(QString selectedText READ selectedText)
        Q_PROPERTY(bool dragEnabled READ dragEnabled WRITE setDragEnabled)
        Q_PROPERTY(bool readOnly READ isReadOnly WRITE setReadOnly)
        Q_PROPERTY(bool undoAvailable READ isUndoAvailable)
        Q_PROPERTY(bool redoAvailable READ isRedoAvailable)
        Q_PROPERTY(bool acceptableInput READ hasAcceptableInput)
        Q_PROPERTY(QString placeholderText READ placeholderText WRITE setPlaceholderText)
        Q_PROPERTY(Qt::CursorMoveStyle cursorMoveStyle READ cursorMoveStyle WRITE setCursorMoveStyle)
        Q_PROPERTY(bool clearButtonEnabled READ isClearButtonEnabled WRITE setClearButtonEnabled)
    public:
        ...
    }

你可能感兴趣的:(随笔小记,qt)