Why disabling of stage resizable dont work in javafx?

若如初见. 提交于 2019-12-23 10:07:18

问题


When I try to setResizable for my scene in javaFX application it doesn't work. I still can change window size. Here's the code for my test application:

@Override
public void start(Stage stage) throws Exception {
    // TODO Auto-generated method stub

    stage.setTitle("Test window");
    stage.setWidth(300);
    stage.setHeight(200);
    stage.setResizable(false);

    stage.show();
}

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Application.launch(args);

}

Perhaps I missed something very simple because I am very new to JavaFX. Can anyone help me? I am using Eclipse 4.3 and JavaSDK 7u25 on Ubuntu 13.04 64bit


回答1:


This works fine on Windows with JDK 1.7.0_25.

Maybe your problem comes from the fact that you are running your application on a Linux system (even if Ubuntu 13.04 is listed as a supported OS...) The Linux support is recent and some bugs might persist.




回答2:


    stage.setMaxWidth(300);        
    stage.setMaxHeight(200);

It prevents from picking window on bounds, but not from clicking window fullscreen button, I didn't realize howto.




回答3:


It's not a bug. It depends on your Operating System's system or window manager. Generally, you either need to put stage.setResizable(false); before or after stage.show().

Although the abovementioned solution works in most cases, sometimes you have to set the maximum height and width of your stage:

stage.setMaxWidth(400);        
stage.setMaxHeight(400);


来源:https://stackoverflow.com/questions/17816682/why-disabling-of-stage-resizable-dont-work-in-javafx

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!