在GWT中,如何调整菜单项的大小,使它们仅限于菜单栏

时间:2013-07-25 19:57:19

标签: gwt menuitem menubar

在GWT中,如何防止MenuItems以预设的像素宽度溢出MenuBar的边界?

我尝试在MenuItem对象本身以及相关的Style对象上使用setWidth方法更改项目的宽度,但两者都没有区别。

我也尝试在将MenuItem添加到MenuBar之前和之后对其进行更改。

1 个答案:

答案 0 :(得分:0)

MenuBar private void openPopup(final MenuItem item) {...}创建DecoratedPopupPanel。 popupPanel有一个回调popup.setPopupPositionAndShow(new PopupPanel.PositionCallback() {...}。这是计算popUp位置的地方,如果你可以覆盖这个回调,你可以添加你的逻辑来测试它是否溢出并设置正确的位置。问题是该方法是私有的,对于快速(并且不那么干净)的解决方案,我将整个类复制到另一个.java文件,并使用它作为新MenuBar的基础。