parent
3d4c4ea56c
commit
6efcec2cbf
@ -0,0 +1,71 @@
|
|||||||
|
import javafx.application.Application;
|
||||||
|
import javafx.geometry.Insets;
|
||||||
|
import javafx.scene.Scene;
|
||||||
|
import javafx.scene.control.Button;
|
||||||
|
import javafx.scene.control.Label;
|
||||||
|
import javafx.scene.control.TextField;
|
||||||
|
import javafx.scene.layout.GridPane;
|
||||||
|
import javafx.stage.Stage;
|
||||||
|
|
||||||
|
public class BaseConverterApp extends Application {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void start(Stage primaryStage) {
|
||||||
|
GridPane grid = new GridPane();
|
||||||
|
grid.setPadding(new Insets(10, 10, 10, 10));
|
||||||
|
grid.setVgap(8);
|
||||||
|
grid.setHgap(10);
|
||||||
|
|
||||||
|
// 输入原始数值
|
||||||
|
Label lblNumber = new Label("数值:");
|
||||||
|
TextField txtNumber = new TextField();
|
||||||
|
grid.add(lblNumber, 0, 0);
|
||||||
|
grid.add(txtNumber, 1, 0);
|
||||||
|
|
||||||
|
// 输入原始进制
|
||||||
|
Label lblFromBase = new Label("原始进制:");
|
||||||
|
TextField txtFromBase = new TextField();
|
||||||
|
grid.add(lblFromBase, 0, 1);
|
||||||
|
grid.add(txtFromBase, 1, 1);
|
||||||
|
|
||||||
|
// 输入目标进制
|
||||||
|
Label lblToBase = new Label("目标进制:");
|
||||||
|
TextField txtToBase = new TextField();
|
||||||
|
grid.add(lblToBase, 0, 2);
|
||||||
|
grid.add(txtToBase, 1, 2);
|
||||||
|
|
||||||
|
// 转换按钮
|
||||||
|
Button btnConvert = new Button("转换");
|
||||||
|
grid.add(btnConvert, 1, 3);
|
||||||
|
|
||||||
|
// 显示结果
|
||||||
|
Label lblResult = new Label("结果:");
|
||||||
|
grid.add(lblResult, 1, 4);
|
||||||
|
|
||||||
|
// 设置场景
|
||||||
|
Scene scene = new Scene(grid, 300, 250);
|
||||||
|
primaryStage.setScene(scene);
|
||||||
|
primaryStage.setTitle("进制转换器");
|
||||||
|
|
||||||
|
// 添加按钮点击事件处理器
|
||||||
|
btnConvert.setOnAction(event -> {
|
||||||
|
String number = txtNumber.getText();
|
||||||
|
int fromBase = Integer.parseInt(txtFromBase.getText());
|
||||||
|
int toBase = Integer.parseInt(txtToBase.getText());
|
||||||
|
|
||||||
|
try {
|
||||||
|
long decimal = Long.parseLong(number, fromBase);
|
||||||
|
String converted = Long.toString(decimal, toBase).toUpperCase();
|
||||||
|
lblResult.setText("结果: " + converted);
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
lblResult.setText("错误: 无效的输入或进制。");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
primaryStage.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
launch(args);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue