2010-09-07 59 views

回答

0

由於wxTextCtrl從wxWindow的繼承,您可以用控件綁定以下鼠標事件: http://docs.wxwidgets.org/2.8/wx_wxmouseevent.html#wxmouseevent

我覺得你感興趣的一個是EVT_MOTION(FUNC)。但是,我從來沒有使用過這個事件,所以我不能肯定地說它是否僅僅在鼠標移動到它所綁定的窗口(這將是更有趣的方法)或全局鼠標移動時產生。

0

我相當肯定他是指插入點遊標,在這種情況下,沒有一個wxWidgets事件來改變它的位置。此外,儘管wxTextCtrl :: SetInsertionPoint()和wxTextCtrl :: SetInsertionPointEnd()是可以被覆蓋的虛方法,但它僅捕獲以編程方式更改的情況,而不是通過取決於本地平臺參與的各種操作(這可能是爲什麼此事件在wxWidgets中不存在)。

我現在想到的可移植捕獲所有插入點更改的最佳解決方案是使用計時器連續輪詢插入點位置。如果您需要在多個位置使用此功能,則可以使用內置的此功能派生您自己的wxTextCtrl,以生成您自己的自定義事件。

我個人的建議是爲您的問題尋找一種替代解決方案,無需時刻知道插入點的位置。你確定你確實需要知道插入點的位置,而不是隻是當文本控件中的值發生變化時?

相關問題