我有一個QLineEdit,我想隱藏的用戶,但仍然採取輸入形式的地方。我正在創建一個打字導師,我想以隱藏的方式進行輸入,以便提供更加動態的反饋形式。如何在Qt LineEdit上使用.hide,仍然需要輸入?
任何其他建議,以最大限度地實現將不勝感激
我有一個QLineEdit,我想隱藏的用戶,但仍然採取輸入形式的地方。我正在創建一個打字導師,我想以隱藏的方式進行輸入,以便提供更加動態的反饋形式。如何在Qt LineEdit上使用.hide,仍然需要輸入?
任何其他建議,以最大限度地實現將不勝感激
你不能做到這一點。當隱藏QLineEdit
時,不會關注它,並且您無法抓取事件。
如果您堅持使用QLineEdit
,則可以選擇關閉顯示文本。 QLineEdit::NoEcho
。
lineEdit->setEchoMode(QLineEdit::NoEcho);
這將顯示編輯框,但它不顯示任何文本。
否則,你應該寫一個插槽來抓取信號窗口keyPressed
,並自己處理所有事情。
我不認爲這是可能的。小部件僅在可見時纔有焦點。也許你可以重寫'keyPress'受保護的函數來模擬你想要的東西,在小部件上顯示給用戶。 – Synxis
在這種情況下,您需要實現並使用QWidget :: keyPressEvent和keyReleaseEvent虛擬函數,而不是輸入控制行QLineEdit。 – darron