首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gluon mobile:菜单中的菜单闪烁

gluon mobile:菜单中的菜单闪烁
EN

Stack Overflow用户
提问于 2019-02-24 22:54:46
回答 1查看 79关注 0票数 1

你好,stackoverflow社区...

我已经将多个(JavaFX)菜单视图放入一个菜单(位于GluonMobile- -instances的子节点中):

问题是,当用户悬停其中一个子菜单时,子菜单会闪烁并相互重叠:

所以我的问题是,如果有人知道我的问题的解决方案。(视图是用SceneBuilder构建的)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-25 03:27:34

对于初学者来说,传统的桌面菜单并不是真正打算用于移动应用程序。

您应该考虑不同的方法,如NavigationDrawer (javadoc)或BottomNavigation控件(javadoc)。

无论如何,如果你真的需要使用它们,这里是对你面临的问题的解释:

在场景生成器中,添加MenuBar时,默认情况下会包含一些MenuMenuItem控件。如果启用Gluon Mobile主题:

您会注意到,Menu上的填充最小,而MenuItem上的填充更大,并且设置了最小的高度和宽度。

如果您添加一个Menu作为另一个Menu的子项,如果此菜单未被选中或聚焦,它的样式将类似于MenuItem,但如果您聚焦它,它将被样式化为Menu,从而强制重新布局。

例如,在这张图片中,顶部的Edit是选择菜单,而底部的Edit未被选中。

布局完成后,如果鼠标光标距离下一项足够近,则现在可能正在选择它,这将展开它。同时,以前选择的菜单将被取消选择,并且它将再次增长...

这里有一个解决问题的简单方法:在视图的css文件中,添加如下内容:

代码语言:javascript
复制
.menu,
.menu:focused,
.menu-item {
    -fx-padding: 10;
}

因此,菜单和菜单项在所有情况下都有相同的填充,以防止任何可能的闪烁。

请注意,使用css,您可以覆盖任何以前存在的样式,并根据自己的喜好对其进行修改。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54853113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档