gtk事件:在事件焦点之前在树视图中选择

时间:2014-11-09 13:15:51

标签: haskell treeview gtk

我的印象是树视图在获得事件焦点之前获取光标已更改事件。我的代码(在haskell中,但我认为这与其他语言绑定非常相似):

    iResult2 <- builderGetObject builder castToTreeView (t2s "titleView")
    on iResult2 focusInEvent $ do
                    putIOwordsT ["------------------title view focus in"]
                    return False
    on  iResult2 cursorChanged   $ do
                    putIOwordsT ["-----------iResult selection"]

“titleView”是包含其他小部件的窗口中的树视图;如果我点击树视图中的一行,我得到cursorChangedEvent并可以读取所选的行。只有AFTERWARDS我得到focusInEvent(前面带有焦点的前一个条目的相应focusOutEvent)。

这不是预期的(只有在焦点位于小部件之后才能进行选择)并使我的程序逻辑变得复杂。我假设在cursorChangedEvent之前有上一个条目的focusOutEvent,以便在被所选新数据写入之前将数据保存在该条目中。

有没有办法影响事件的顺序?

是故意行为还是错误?

0 个答案:

没有答案