有几次我因为建议使用以下方法而受到批评:
在Swing组件上.当我想在显示的组件之间定义比例时,我没有看到任何替代它们的用法.我被告知这个:
对于布局,答案总是相同的:使用合适的LayoutManager
我在网上搜索了一下,但我没有找到任何关于这个主题的综合分析.所以我有以下问题:
我有一个JavaFX WebView,我希望它与开始时的场景一样大.如果我可以通过场景调整大小,这将是完美的.
但是现在我只关注初始尺寸.
@Override
public void start(Stage stage) {
try {
Scene scene = new Scene(createWebViewPane(), 1920, 1080);
scene.getStylesheets().add(getClass().getResource("Styles/application.css").toExternalForm());
stage.setScene(scene);
stage.show();
} catch (Exception e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
上面的代码创建了一个宽度为1920px,高度为1080px的场景.createWebViewPane()在窗格上创建WebView.
private Pane createWebViewPane() {
final Pane pane = new Pane();
pane.minWidth(1920);
pane.minHeight(1080);
WebView browser = new WebView();
browser.minWidth(1920);
browser.prefWidth(1920);
browser.minHeight(1080);
browser.prefHeight(1080);
WebEngine webEngine = browser.getEngine();
webEngine.load(getClass().getResource("index.html").toExternalForm());
pane.getChildren().add(browser);
return pane;
}
Run Code Online (Sandbox Code Playgroud)
在那里,我尝试设置宽度/高度.我也在样式表中设置它.
web-view{
-fx-font-scale: 1;
-fx-min-width: 1920px;
-fx-min-height: 1080px;
-fx-pref-width: 100%;
-fx-pref-height: 100%;
}
Run Code Online (Sandbox Code Playgroud)
但是这些属性似乎都不会影响WebView.它仍然具有默认大小.宽800像素,高600像素.