Javafx顶级容器Stage(舞台)
继承关系:java.lang.Objectjavafx.stage.Windowjavafx.stage.Stage基本属性设置:public class TestStage extends Application{public static void main(String[] args) {launch();}public void start(Stage pri...
·
继承关系:
java.lang.Object
javafx.stage.Window
javafx.stage.Stage
基本属性设置:
public class TestStage extends Application{
public static void main(String[] args) {
launch();
}
public void start(Stage primaryStage) throws Exception {
//设置标题
primaryStage.setTitle("stage");
//设置初始大小
primaryStage.setWidth(300);
primaryStage.setHeight(300);
//显示窗口
primaryStage.show();
}
}
//设置图标
//primaryStage.getIcons().add(new Image("path") );
//最小化
//primaryStage.setIconified(true);
//最大化
//primaryStage.setMaximized(true);
//关闭窗口
//primaryStage.close();
//设置大小范围
//primaryStage.setMaxHeight(value);
//primaryStage.setMinHeight(value);
//宽度设置同理
primaryStage.widthProperty().addListener(new ChangeListener<Number>(){
public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
//监听窗口属性
}
});
//获得高度
//primaryStage.getHeight();
//设置是否可改变大小
//primaryStage.setResizable(false);
//设置全屏
//primaryStage.setFullScreen(true);
//设置场景Scene
//primaryStage.setScene(new Scene(new Pane()));
//透明度
//primaryStage.setOpacity(0.5);
//设置置顶
//primaryStage.setAlwaysOnTop(true);
//设置位于桌面屏幕坐标
//primaryStage.setX(value);
不可改变大小
透明度0.5
置顶
//设置永久置顶,直至窗口关闭
primaryStage.setAlwaysOnTop(true);
//设置一次置顶
primaryStage.toFront();
焦点
//获取焦点
primaryStage.requestFocus();
//监听焦点属性 如果失去焦点则发出获取焦点请求
primaryStage.focusedProperty().addListener(new ChangeListener<Boolean>(){
public void changed(ObservableValue<? extends Boolean> observable, Boolean oldValue, Boolean newValue) {
if(!primaryStage.isFocused()){
primaryStage.requestFocus();
}
}
});
-
风格样式style
- StageStyle.DECORATED 一个有纯白背景和平台装饰的舞台。
- StageStyle.UNDECORATED纯白背景,无装饰的舞台。
纯白背景所以看不见,但内部节点可见 比如这个按钮
- StageStyle.TRANSPARENT一个有透明背景且没有装饰的舞台。
透明所以看不见和UNDECORATED差不多 - StageStyle.UTILITY 一个有纯白背景和最少平台装饰的舞台。
- StageStyle.UNIFIED 一个统一标准的舞台。
没有最大化,最小化选项
- StageStyle.DECORATED 一个有纯白背景和平台装饰的舞台。
-
模式(Modality)
- Modality.NONE 不阻止任何其他窗口的阶段。
- Modality.WINDOW_MODAL 阻止输入事件从其所有者(父)传递到所有窗口的阶段。它的根是最近的没有所有者的祖先窗口。
- Modality.APPLICATION_MODAL 阻止输入事件从同一应用程序传递到所有窗口的阶段,子层次结构中的事件除外。
stage.initModality(Modality.APPLICATION_MODAL);//模态
stage.initOwner(fstage);//设置拥有者
stage将阻止消息传入fstage,系统发出警告声音
更多推荐
已为社区贡献3条内容
所有评论(0)