我有一個QComboBox
,這是可編輯的,我實現了keyPressEvent(QKeyEvent *)
方法,但它似乎並沒有激發這種方法。如何調用QCombobox的linedit的KeyPressEvent(QKeyEvent *)?
我能想到發生這種情況的唯一原因是,發生任何編輯實際發生在lineEdit對象,我們應該實現線的keyPressEvent(QKeyEvent *)編輯。我怎樣才能做到這一點?
我有一個QComboBox
,這是可編輯的,我實現了keyPressEvent(QKeyEvent *)
方法,但它似乎並沒有激發這種方法。如何調用QCombobox的linedit的KeyPressEvent(QKeyEvent *)?
我能想到發生這種情況的唯一原因是,發生任何編輯實際發生在lineEdit對象,我們應該實現線的keyPressEvent(QKeyEvent *)編輯。我怎樣才能做到這一點?
你有兩個選擇:
安裝在lineEdit
微件的事件過濾器。
使用setLineEdit
用您自己的子類替換現有的小部件,該子類重新實現事件處理程序。
我嘗試安裝事件過濾器,但它不工作。 –
這些信息不夠。請展示你的工作。編輯問題以提供一個自包含的'main.cpp'來展示問題。確保它確實是最小的。最多考慮40-50行。以'#include
的可能的複製[如何-覆蓋KeyPressEvent爲可編輯QComboBox?](http://stackoverflow.com/questions/3264795/how-to-override-keypressevent-for-an-editable-qcombobox) – m7913d
我已經實現了keyPressEvent方法,並且我沒有任何問題,您可以顯示您嘗試的內容。 – eyllanesc
你究竟想要做什麼?你爲什麼認爲你需要重新實現'keyPressEvent'? –