- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有没有办法为新的BrowserWindowOpener(dynamicURL)传递动态URL?
我想要实现如下:选择表中的文件并单击按钮,这将打开一个带有文件 View 的浏览器;您可以打开随机文件,因此 BrowserWindowOpener 的参数必须是动态的。
我知道还有其他打开方式,例如:Page.getCurrent().open...但我需要像 BrowserWindowOpener 那样禁用 URL 栏进行更改。
最佳答案
我找到的解决方案可能被认为是一种黑客行为。如果有经验丰富的 Vaadin 开发者碰巧看到这篇文章,请告诉我是否有更好的方法。
同时,解决方案如下:
下面是一个例子:
public class DownloadFileTable extends CustomComponent {
private String currentSelectedFile = null;
public DownloadFileTable() {
VerticalLayout layout = new VerticalLayout();
setCompositionRoot(layout);
IndexedContainer container = new IndexedContainer();
container.addContainerProperty("name", String.class, "default");
container.addItem("image1.jpg").getItemProperty("name").setValue("image1.jpg");
container.addItem("text.csv").getItemProperty("name").setValue("text.csv");
container.addItem("document.doc").getItemProperty("name").setValue("document.doc");
Button downloadButton = new Button("Download selected file");
final BrowserWindowOpener browserWindowOpener = new BrowserWindowOpener(new ExternalResource("http://google.com") {
@Override
public String getURL() {
return currentSelectedFile;
}
});
browserWindowOpener.setFeatures("location=0");
browserWindowOpener.extend(downloadButton);
Table table = new Table("Files", container);
table.setSelectable(true);
table.setImmediate(true);
table.addValueChangeListener(new Property.ValueChangeListener() {
@Override
public void valueChange(Property.ValueChangeEvent event) {
currentSelectedFile = (String) event.getProperty().getValue();
browserWindowOpener.markAsDirty();
}
});
layout.addComponent(table);
layout.addComponent(downloadButton);
}
}
browserWindowOpener.setFeatures("location=0"); 告诉弹出窗口限制用户修改地址栏。
关于java - BrowserWindowOpener 和动态 url/资源 VAADIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22304784/
在 Vaadin example of how to print a dynamically generated PDF他们有一个两步方法,首先您单击 OkButton然后是 PrintButton
有没有办法为新的BrowserWindowOpener(dynamicURL)传递动态URL? 我想要实现如下:选择表中的文件并单击按钮,这将打开一个带有文件 View 的浏览器;您可以打开随机文件,
我用 BrowserWindowOpener 成功打开了新的浏览器窗口. 问题:如何将一些信息传递给新实例化的 UI 子类? 语法要求我指定一个要实例化的类。我如何与 future 的实例沟通? Br
我是一名优秀的程序员,十分优秀!