parent
fb5fdcad20
commit
fc82a1ec5c
@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module type="JAVA_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||||
|
<exclude-output />
|
||||||
|
<content url="file://$MODULE_DIR$">
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||||
|
</content>
|
||||||
|
<orderEntry type="inheritedJdk" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
</component>
|
||||||
|
</module>
|
@ -0,0 +1,5 @@
|
|||||||
|
public class Main {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
System.out.println("Hello world!");
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,88 @@
|
|||||||
|
import javafx.application.Application;
|
||||||
|
import javafx.stage.Stage;
|
||||||
|
import javafx.application.Application;
|
||||||
|
import javafx.geometry.Insets;
|
||||||
|
import javafx.scene.Scene;
|
||||||
|
import javafx.scene.control.*;
|
||||||
|
import javafx.scene.layout.GridPane;
|
||||||
|
import javafx.stage.Stage;
|
||||||
|
|
||||||
|
public class test1 extends Application {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void start(Stage primaryStage) {
|
||||||
|
primaryStage.setTitle("进制转换器");
|
||||||
|
|
||||||
|
// 创建布局
|
||||||
|
GridPane grid = new GridPane();
|
||||||
|
grid.setPadding(new Insets(10));
|
||||||
|
grid.setVgap(8);
|
||||||
|
grid.setHgap(10);
|
||||||
|
|
||||||
|
// 输入框
|
||||||
|
Label inputLabel = new Label("输入数值:");
|
||||||
|
GridPane.setConstraints(inputLabel, 0, 0);
|
||||||
|
TextField inputField = new TextField();
|
||||||
|
GridPane.setConstraints(inputField, 1, 0);
|
||||||
|
|
||||||
|
// 源进制选择
|
||||||
|
Label fromBaseLabel = new Label("源进制:");
|
||||||
|
GridPane.setConstraints(fromBaseLabel, 0, 1);
|
||||||
|
ComboBox<Integer> fromBaseCombo = new ComboBox<>();
|
||||||
|
fromBaseCombo.getItems().addAll(2, 8, 10, 16); // 添加八进制
|
||||||
|
fromBaseCombo.setValue(10); // 默认选择十进制
|
||||||
|
GridPane.setConstraints(fromBaseCombo, 1, 1);
|
||||||
|
|
||||||
|
// 目标进制选择
|
||||||
|
Label toBaseLabel = new Label("目标进制:");
|
||||||
|
GridPane.setConstraints(toBaseLabel, 0, 2);
|
||||||
|
ComboBox<Integer> toBaseCombo = new ComboBox<>();
|
||||||
|
toBaseCombo.getItems().addAll(2, 8, 10, 16); // 添加八进制
|
||||||
|
toBaseCombo.setValue(10); // 默认选择十进制
|
||||||
|
GridPane.setConstraints(toBaseCombo, 1, 2);
|
||||||
|
|
||||||
|
// 转换按钮
|
||||||
|
Button convertButton = new Button("转换");
|
||||||
|
GridPane.setConstraints(convertButton, 1, 3);
|
||||||
|
|
||||||
|
// 输出框
|
||||||
|
Label resultLabel = new Label("结果:");
|
||||||
|
GridPane.setConstraints(resultLabel, 0, 4);
|
||||||
|
TextField resultField = new TextField();
|
||||||
|
resultField.setEditable(false);
|
||||||
|
GridPane.setConstraints(resultField, 1, 4);
|
||||||
|
|
||||||
|
// 处理转换逻辑
|
||||||
|
convertButton.setOnAction(e -> {
|
||||||
|
String input = inputField.getText();
|
||||||
|
int fromBase = fromBaseCombo.getValue();
|
||||||
|
int toBase = toBaseCombo.getValue();
|
||||||
|
String result = convertBase(input, fromBase, toBase);
|
||||||
|
resultField.setText(result);
|
||||||
|
});
|
||||||
|
|
||||||
|
// 添加所有控件到布局
|
||||||
|
grid.getChildren().addAll(inputLabel, inputField, fromBaseLabel, fromBaseCombo,
|
||||||
|
toBaseLabel, toBaseCombo, convertButton, resultLabel, resultField);
|
||||||
|
|
||||||
|
// 创建场景并显示
|
||||||
|
Scene scene = new Scene(grid, 400, 200);
|
||||||
|
primaryStage.setScene(scene);
|
||||||
|
primaryStage.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
private String convertBase(String value, int fromBase, int toBase) {
|
||||||
|
try {
|
||||||
|
// 将输入值从源进制转换为十进制
|
||||||
|
int decimalValue = Integer.parseInt(value, fromBase);
|
||||||
|
// 将十进制转换为目标进制
|
||||||
|
return Integer.toString(decimalValue, toBase).toUpperCase();
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
return "输入无效";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
launch(args);
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in new issue