javafx控件Button
生活随笔
收集整理的这篇文章主要介绍了
javafx控件Button
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
Button是Control的一个子类,属于控件的一种
基本使用方法
创建一个按钮,传入一个字符串,即为按钮的标签
Button b=new Button ("name");也可以使用无参构造方法,再设置按钮标签
Button b=new Button (); b.setText("name");可以移动按钮,如果按钮被某些容器托管后,此方法将失效,比如HBox
b.setLayoutX(100);
b.setLayoutY(100);
设置大小
- b.setMinSize(minWidth, minHeight);
设置字体
- b.setFont(Font.font("Segoe Script",40));
可通过以下方法获得系统字体名
- System.out.println(Font.getFontNames());
设置样式
- b.setStyle("-fx-background-color:#aabbcc");
使用css设置更简单
按钮最重要的还是事件响应
简单的活动事件
- b.setOnAction(e->System.out.println("Action "));
响应击键事件
b.setOnKeyPressed(new EventHandler<KeyEvent>() {public void handle(KeyEvent event) {System.out.println(event.getCode().name());}});鼠标点击事件
b.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() {public void handle(MouseEvent event) {System.out.println("点击次数 :"+event.getClickCount());if(event.getButton().name().equals(MouseButton.PRIMARY.name())) {System.out.println("左键 ");}if(event.getButton().name().equals(MouseButton.SECONDARY.name())) {System.out.println("右键 ");}if(event.getButton().name().equals(MouseButton.MIDDLE.name())) {System.out.println("滑轮键按下 ");}}});另外还有鼠标进出事件,鼠标移动事件,焦点事件,以及鼠标滑轮滚动事件等等。
对于触屏系统也有相应事件监听器。
完整代码
public class TestButton extends Application{public static void main(String[] args) {launch();}public void start(Stage primaryStage) throws Exception {Group g=new Group();Button b=new Button ("Segoe Script");b.setFont(Font.font("Segoe Script",40));System.out.println(Font.getFontNames());b.setLayoutX(100);b.setLayoutY(100);b.setStyle("-fx-background-color:#aabbcc");b.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() {public void handle(MouseEvent event) {System.out.println("点击次数 :"+event.getClickCount());if(event.getButton().name().equals(MouseButton.PRIMARY.name())) {System.out.println("左键 ");}if(event.getButton().name().equals(MouseButton.SECONDARY.name())) {System.out.println("右键 ");}if(event.getButton().name().equals(MouseButton.MIDDLE.name())) {System.out.println("滑轮键按下 ");}}});b.setOnKeyPressed(new EventHandler<KeyEvent>() {public void handle(KeyEvent event) {System.out.println(event.getCode().name());}});b.setOnAction(e->System.out.println("Action "));g.getChildren().add(b);Scene s=new Scene(g);primaryStage.setScene(s);primaryStage.show();} }总结
以上是生活随笔为你收集整理的javafx控件Button的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 刘晏造船
- 下一篇: 无线路由器有几种工作模式