2017-01-27 51 views
0

我只想要点击汉堡时显示菜单列表。现在我想要点击任何菜单时,我的抽屉和抽屉应该隐藏起来。如何在JavaFX中触发汉堡包

我知道如何触发按钮,如doClick(),但我想知道通过API,但没有找到任何合适的答案成功。你能分享一下你的经验吗?我怎么能在javafx中触发一个汉堡包。

enter image description here

HamburgerSlideCloseTransition transition = new HamburgerSlideCloseTransition(hamburger); 
     transition.setRate(-1); 
     hamburger.addEventHandler(MouseEvent.MOUSE_CLICKED, (e) -> { 
      transition.setRate(transition.getRate() * -1); 
      transition.play(); 
      borderpane.setRight(drawersStack); 
      drawersStack.toggle(rightDrawer); 
     }); 

谢谢!

+0

你的问题不是很清楚:你有什么?你的代码在哪里存在问题?什么是实际行为和假定的行为是什么? – hotzst

+0

如何添加汉堡包的触发器? – sudokhan

+0

所以就我所了解的你而言,当你点击抽屉里的任何按钮时,你想要完整的抽屉菜单隐藏(就好像你在抽屉展开时点击汉堡按钮)。为什么不给你的抽屉中的每个按钮添加一个Eventhandler,以便它再次切换转换,但是方向相反。 – Nash

回答

0

正如我在评论中所建议的那样,您可以从抽屉中创建自定义类的所有按钮,并在其中处理事件处理,例如,

class drawerButton extends Button{ 

    public drawerButton(){ 
     addEventHandler(MouseEvent.MOUSE_CLICKED, (e) -> { 
      //open desired pane (pdf, favorites, etc) 
      //close the drawer 
     } 
    } 
}