我有一个Webview(JavaFX 8)加载来自维基百科的文章.
我放了一个刷新按钮以允许刷新,基本上,它使用相同的URL再次调用WebView的webEngine的load方法.但大约有50%的时间从未呈现过该文章.在这种情况下,我可以右键单击Web视图以手动刷新,然后它将成功呈现.
我试着看看LoadWorker状态,它总是说"成功"......
下面是一个简短的可运行的测试类,它证明了我的观点.
public class Test1 extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
final WebView webView = new WebView();
webView.getEngine()
.load("http://fr.wikipedia.org/wiki/Sp%C3%A9cial:Page_au_hasard");
Tab tab = new Tab("webView", webView);
TabPane tabPane = new TabPane(tab);
BorderPane borderPane = new BorderPane(tabPane);
Button buttonRefresh = new Button("Refresh");
buttonRefresh.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent event) {
webView.getEngine()
.load("http://fr.wikipedia.org/wiki/Sp%C3%A9cial:Page_au_hasard");
}
});
borderPane.setBottom(buttonRefresh);
Scene scene = new Scene(borderPane);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main (String[] args) {
launch(args);
}
Run Code Online (Sandbox Code Playgroud)
}
难道我做错了什么?有谁知道这个问题可能来自哪里? …
我尝试制作一个没有箭头按钮的可编辑JComboBox.(它将显示其下拉列表,具体取决于用户在其编辑器中输入的内容)
到目前为止,箭头按钮不可见,但仍然可以点击!它仍然会在点击时显示列表.
public class MyComboBox<E> extends JComboBox<E> {
public MyComboBox(E[] list) {
super(list);
this.setEditable(true);
setUI(new BasicComboBoxUI() {
@Override
protected JButton createArrowButton() {
return new JButton() {
@Override
public int getWidth() {
return 0;
}
};
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法禁用它?