2013-08-17 34 views
0

我有一個自定義的GTK小部件(基本上是在開羅表面的HBox覆蓋)。我希望在窗口中點擊窗口小部件之外時隱藏它。類似於菜單的行爲方式。如何在點擊外面隱藏Gtk小部件?

我嘗試使用grab_focus並等待焦點事件,但小部件沒有抓住焦點,我認爲這不是一個可調焦的小部件。

[1] https://developer.gnome.org/pygtk/2.24/class-gtkwidget.html#method-gtkwidget--grab-focus

+0

請顯示一些代碼 – drahnr

回答

1

您可能需要設置CAN_FOCUS標誌,如果你想使用FOCUS_OUT事件。

但是,如果您想要單擊外部以隱藏小部件(如果需要使用菜單),則必須連接到小部件下方區域的事件。您可以連接到窗口的button_press事件,注意不要停止事件傳播。