addMouseListener不适用于juce :: TreeView

时间:2011-03-16 01:25:59

标签: user-interface juce

我没有得到JUCE官方论坛的回答,我想在这里问一下并希望。

这是我的问题:

我想将mouseDoubleClick事件注册/挂钩到juce :: TreeView类或它的派生。

void    MainComponent::mouseDoubleClick (const MouseEvent &e)
{
//
// do something here
}

MainComponent::MainComponent(....)
{
tv = new TreeView();
addAndMakeVisible( tv );

addMouseListener(this, false);

}

上面的代码不起作用,JUCE创建者没有回答。我的问题是如何使它工作?它应该能够用简单的例子来解释。 addMouseListener()将是不一致的,应该记录下来,例如“addMouseListener将无法在某些类上运行,例如TreeView”。我很乐意在文档中找到它并避免使用以前的技术。

1 个答案:

答案 0 :(得分:1)

对于迟到的回答感到抱歉,但是...记录:

你在这里做的是在你的主要组件中添加一个MouseListener,并告诉它不要将事件转发给它的孩子(第二个param == false),所以行为很正常。

恕我直言,如果您改为写作,它应该有效:

tv->addMouseListener(this, false);