qmlqt-quick

Placeholder text in QML TextEdit


I am looking for a way to show a text hint stating the expected input as advice for the user. Take the Google search bar for example:

enter image description here

Is there a property I am missing, or is this something that has to be achieved through scripting?


Solution

  • The property doesn't exist on the Qt Quick input items. You can vote for the feature here.

    In the meantime, you can use TextArea from Qt Quick Controls 2.

    If you would rather use pure Qt Quick, you can do something similar to what the Controls do and add a Text item above the field:

    import QtQuick 2.5
    import QtQuick.Window 2.2
    
    Window {
        width: 300
        height: 300
        visible: true
    
        TextEdit {
            id: textEdit
            width: 200
            height: 50
    
            property string placeholderText: "Enter text here..."
    
            Text {
                text: textEdit.placeholderText
                color: "#aaa"
                visible: !textEdit.text
            }
        }
    }