在 GWT 中,如何防止 MenuItems 溢出具有预设像素宽度的 MenuBar 的边界?
我尝试使用 MenuItem 对象本身及其关联的 Style 对象上的 setWidth 方法更改项目的宽度,但两者都没有改变。
我还尝试在将 MenuItem 添加到 MenuBar 之前和之后对其进行更改。
MenuBarprivate void openPopup(final MenuItem item) {...}
创建一个DecoratedPopupPanel
. popupPanel 有一个回调popup.setPopupPositionAndShow(new PopupPanel.PositionCallback() {...}
。这是计算弹出位置的地方,如果您可以覆盖此回调,您可以添加逻辑来测试它是否溢出并设置正确的位置。问题是该方法是私有的,为了快速(而且不是那么干净)的解决方案,我会将整个类复制到另一个 .java 文件并使用它作为新的 .java 文件的基础MenuBar
。