gpt4 book ai didi

java - Vaadin 8. 资源无法解析

转载 作者:行者123 更新时间:2023-12-01 20:11:04 27 4
gpt4 key购买 nike

我尝试添加一个覆盖插件。 https://vaadin.com/directory/component/overlays我的图像叠加有问题。我收到这个错误:

The type com.vaadin.terminal.Resource cannot be resolved. 
It is indirectly referenced from required .class file

问题出在这一行:

io.setImage(res);

我该如何修复它?我将 icon-new.png 放入类包文件夹中并添加到 Maven 覆盖插件中

我的代码:

final ImageOverlay io = new ImageOverlay(button);

Resource res = new ClassResource(this.getClass(), "../icon-new.png");

io.setImage(res);
io.setComponentAnchor(Alignment.TOP_LEFT); // Top left of the button
io.setOverlayAnchor(Alignment.MIDDLE_CENTER); // Center of the image
io.setClickListener(new OverlayClickListener() {
public void overlayClicked(CustomClickableOverlay overlay) {
Notification.show("ImageOverlay Clicked!");
}
});
layout.addComponent(io);
io.setEnabled(true);

我需要实现按钮上显示覆盖层。如果用户单击此按钮并添加新内容,例如 taht 会显示在按钮上 enter image description here

最佳答案

这是因为它仅与附加页面中所示的 Vaadin 6 兼容:

Vaadin overlay add-on compatibility

如果您滚动到评论部分,有人建议使用与 Vaadin 7 兼容的附加组件的分支,但我看不到与 8 相关的任何内容:

HI ALL! You can find version 1.1.3 for Vaadin 7.6 here: https://github.com/Haulmont/vaadin-overlays/releases

YURIY ARTAMONOV

与多个 Vaadin 版本兼容的附加组件会明确指出这一点,并且通常(但不一定......开发人员的选择)具有不同的版本编号,例如:1.x 适用于 Vaadin 6,2.x 适用于 Vaadin 7 、Vaadin 8 的 3.x 等:

Vaadin multiple compatibility add-on

无论哪种方式,单击特定 Vaadin 版本的链接都会选择与其兼容的最新附加版本。或者,如果您从下拉列表中选择附加版本,则与其兼容的 Vaadin 版本将相应更新。

<小时/>

更新后编辑

您可以使用常规按钮+预定义的BUTTON_ICON_ALIGN_RIGHT瓦洛风格。来自javadoc:

/**
* Align the icon to the right side of the button caption. Can be combined
* with any other Button style.
*/
public static final String BUTTON_ICON_ALIGN_RIGHT = "icon-align-right";

请注意,为了获得最佳 UI 结果,我使用了 24x24 图标,但根据您的要求,您可以调整主题以获得所需的大小。另外,如果您没有图标并且不想花费金钱或时间购买或创建自己的图标,您可以使用现有的 Vaadin Font Icons ( list of iconsmatching java enum )

public class ButtonWithIconOnTheRightComponent extends VerticalLayout {
public ButtonWithIconOnTheRightComponent() {
// text filed to specify icon URL
TextField urlField = new TextField("Icon URL", "http://files.softicons.com/download/toolbar-icons/status-icons-set-by-iconleak/png/16x16/30.png");

// button which updates its icon using the URL specified in the text field above
Button button = new Button("Update icon", event -> event.getButton().setIcon(new ExternalResource(urlField.getValue())));

// use valo style to align icon to the right
button.addStyleName(ValoTheme.BUTTON_ICON_ALIGN_RIGHT);

// add components to the UI
addComponents(urlField, button);
setSpacing(true);
}
}

button-with-icon-alligned-to-right

关于java - Vaadin 8. 资源无法解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46704333/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com