【发布时间】:2012-03-28 08:27:36
【问题描述】:
我正在使用 GWT 展示中的 MenuBar。我想在菜单栏中添加文本。你能告诉我我可以通过什么方式得到它吗?
【问题讨论】:
-
您想在哪里添加文字?你如何添加菜单已经很好地解释了......
我正在使用 GWT 展示中的 MenuBar。我想在菜单栏中添加文本。你能告诉我我可以通过什么方式得到它吗?
【问题讨论】:
你也可以试试这个。它在 MenuBar Docs API 中给出
public MenuItem addItem(java.lang.String text,
boolean asHTML,
MenuBar popup)
所以,在你的情况下,
final String image = "<img src='"+GWT.getModuleBaseURL() + "/images/down-arrow.png' height='25px' width='25px'/>";
HomeMenu.addItem(new MenuItem(image,true,mainMenu));
【讨论】:
最好的方法是不要破解任何东西。只需使用 Image 类:
MenuItem profileMenuItem = new MenuItem(new Image(TripImages.INSTANCE.getUserSmall()) + " Profile", true, profileMenuDropdown);
为我工作。
【讨论】:
我找到了解决方案。也许它会帮助某人......
MenuBar HomeMenu = new MenuBar();
final String image = "<img src='"+GWT.getModuleBaseURL() + "/images/down-arrow.png' height='25px' width='25px'/>";
SafeHtml addActivityImagePath = new SafeHtml() {
@Override
public String asString() {
return image;
}
};
HomeMenu.addItem(new MenuItem(addActivityImagePath,mainMenu));
【讨论】:
如果您使用的是bundle 和ImageResource,则可以使用AbstractImagePrototype。
如果GlobalBundle.INSTANCE.home() 是我的ImageResource,则它会出现在菜单上:
menu.addItem(AbstractImagePrototype.create(GlobalBundle.INSTANCE.home()).getSafeHtml(), ...);
【讨论】:
MenuBar HomeMenu = new MenuBar();
final String image = "<img src='"+GWT.getModuleBaseURL() + "/images/down-arrow.png' height='25px' width='25px'/>";
SafeHtml addActivityImagePath = new SafeHtml() {
@Override
public String asString() {
return image;
}
};
HomeMenu.addItem(new MenuItem(addActivityImagePath,mainMenu));
【讨论】: