0
我正在嘗試編碼Vaadin中的音樂播放器。我正在使用其內置的音頻組件。更改Vaadin中的音頻源
我想要這樣工作的方式是我在樹中選擇一個文件並播放該音頻文件。
我設置了正確的源文件在我的樹管理:
Tree tree = new Tree();
FilesystemContainer container = new FilesystemContainer(file);
tree.setContainerDataSource(container);
tree.setImmediate(true);
mainWindow.addComponent(tree);
tree.addListener(new Property.ValueChangeListener() {
@Override
public void valueChange(ValueChangeEvent event) {
System.out.println(event);
File file = (File) event.getProperty().getValue();
FileResource resource = new FileResource(file, application);
audio.setSource(resource);
audio.pause();
audio.requestRepaint();
}
});
但是,我必須手動刷新頁面這個工作。如何讓音頻組件在不刷新頁面的情況下獲取新源?
我剛試過這個,不起作用。 – Nefron
對不起,我稍微改進了解決方法。我在這裏看到的重要一點是,DOM樹實際上發生了變化,我不確定重新添加(相同)組件是否真的這樣做。創建一個新的音頻組件絕對是這樣做的。如果還沒有,請嘗試一下。至少應該這樣,它會告訴你一些關於原因的信息。 – eeq