JavaFX实验1 增加/减少

编写ー个 Javafx程序,显示两个按钮和一个数字(最初为50)。按钮上的文本分别为increment(增加)和Decrement(减少)。每当按下 Increment按钮时,所显示的数增加1;按下 Decrement按钮时,所显示的数减少1。


目录结构
在这里插入图片描述



实现代码

package tech.zger.www;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TextArea;
import javafx.scene.image.Image;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.stage.Stage;

/**
 * @author zg
 * @create 2021/11/14 21:58
 */
public class MainApplication extends Application {
    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage primaryStage) {
        // 标题
        primaryStage.setTitle("增加-减少");
        // 图标
        primaryStage.getIcons().add(new Image(getClass().getResourceAsStream("/tech/zger/www/logo/zg.jpg")));
        // 窗口不可调节
        primaryStage.setResizable(false);

        // 文本域
        TextArea textArea = new TextArea();
        // 数字最初为50
        textArea.setText("50");
        // 文本域不可编辑
        textArea.setEditable(false);
        // 定义文本域的尺寸
        textArea.setPrefSize(596, 256);
        // 起始横坐标
        textArea.setLayoutX(2);
        // 起始纵坐标
        textArea.setLayoutY(2);
        // 设置字体样式
        textArea.setFont(new Font("JetBrains Mono Regular",18));

        Button incBtn = new Button("Increment");
        incBtn.setLayoutX(100);
        incBtn.setLayoutY(300);
        incBtn.setFont(new Font("JetBrains Mono Regular",18));
        incBtn.setTextFill(Color.WHITE);
        incBtn.setStyle("-fx-background-color: blue");

        Button decBtn = new Button("Decrement");
        decBtn.setLayoutX(400);
        decBtn.setLayoutY(300);
        decBtn.setFont(new Font("JetBrains Mono Regular",18));
        decBtn.setTextFill(Color.WHITE);
        decBtn.setStyle("-fx-background-color: blue");

        Group group = new Group(textArea, incBtn, decBtn);
        Scene scene = new Scene(group, 600, 400);
        primaryStage.setScene(scene);
        primaryStage.show();

        // 点击increment,数字加1
        incBtn.setOnAction(event -> {
            String text = textArea.getText();
            int num = Integer.parseInt(text);
            if (num >= 0) {
                num++;
                textArea.setText("" + num);
            }
        });

        // 点击decrement,数字减1
        decBtn.setOnAction(event -> {
            String text = textArea.getText();
            int num = Integer.parseInt(text);
            // 当数字不为0时,才减1
            if (num > 0) {
                num--;
                textArea.setText("" + num);
            }
        });

    }
}


效果展示
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值