gpt4 book ai didi

vaadin - 自定义 Vaadin bean 属性到表格单元格转换

转载 作者:行者123 更新时间:2023-12-05 00:35:04 26 4
gpt4 key购买 nike

我们有一个 BeanItemContainer 我们显示为一个 Vaadin 表,它工作得很好。
唯一的问题是 bean 属性之一是一个 URL,我们希望它是一个链接。

将“a href=...”添加到 setURL() 函数中的 url 有效,但

  • 它并没有让我觉得非常优雅的代码
  • 其他调用者现在必须在使用 get 方法后从中剥离标签。

  • 向表中添加点击监听器也能正常工作,但
  • 它可能会打开一个窗口而不是选项卡
  • 它可能会被弹出窗口阻止程序阻止

  • 有没有办法控制 Vaadin 将 bean 属性值转换为表格单元格的过程?

    最佳答案

    在表上使用 ColumnGenerator,并生成一个 Link 组件,例如

    table.addGeneratedColumn("link", new Table.ColumnGenerator() {
    @Override
    public Object generateCell(Table source, Object itemId, Object columnId) {
    Item item = source.getItem(itemId);
    String columnValue = String.valueOf(item.getItemProperty(columnId).getValue());

    String urlValue = columnValue; // Assume columnValue contains full url including protocol, e.g. http://stackoverflow.com
    String urlDescription = columnValue; // Description is the same as the
    return new Link(urlDescription, new ExternalResource(urlValue));
    }
    })

    documentationjavadoc更多细节

    关于vaadin - 自定义 Vaadin bean 属性到表格单元格转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9905266/

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