描述: 在本次编程任务中,您需要使用 JavaFX 框架设计一个计算器应用程序的静态界
面。请确保计算器界面美观、易用且符合以下要求:
要求:
1. 计算器的尺寸应适中,以方便用户在各种屏幕尺寸上使用。
2. 计算器的按钮应呈长方形,以便用户更容易点击。
3. 按钮的布局应清晰易懂,遵循常见的计算器布局。例如,将数字按钮按照 3x3 的
网格排列,将加、减、乘、除等运算符按钮放在数字按钮的右侧。
4. 计算器的颜色设置应保持视觉上的区分。例如,可以将数字按钮设置为浅色背
景,运算符按钮设置为深色背景,以便用户快速识别。
5. 计算器应具备一个清楚易读的文本框,用于显示用户输入的数字和计算结果。建
议将文本框字体设置更大些,以便用户在屏幕上轻松阅读。
提示:
1. 通过将组件添加到 GridPane 中的适当行和列,你可以轻松地实现清晰的布局。
2.
使用 JavaFX 的预定义控件,如 Button、TextField 和 Label,以便更好地满足项目需
求。
![](https://i-blog.csdnimg.cn/blog_migrate/361c7dc3bbd27db3255d8e84ec9f70a8.png)
import javafx.application.Application;
import javafx.geometry.*;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.GridPane;
import javafx.scene.text.Font;
import javafx.stage.Stage;
public class Main extends Application{
public void start(Stage primaryStage){
BorderPane pane=new BorderPane();//边界窗格
GridPane gPane=new GridPane();//网络窗格
gPane.setAlignment(Pos.CENTER);
gPane.setHgap(5);//元素行间间隔
gPane.setVgap(5);//元素列间间隔
gPane.setPadding(new Insets(10,10,10,10));//边框
TextField t=new TextField();//显示框
t.setFont(Font.font(20));//设置字体大小
t.setMinHeight(60);
t.setMinWidth(600);
pane.setTop(t);//放置在边界窗格的上方
pane.setBottom(gPane);//将网络窗格放在边界窗格下方
Button c=new Button("C");//按钮C
c.setFont(Font.font(40));//设置字体大小
c.setMinHeight(50);//最小高度
c.setMinWidth(140);//最小宽度
gPane.add(c,0,1);
c.setStyle("-fx-background-color: orange");//设置按钮颜色*************************************
Button ce=new Button("CE");//按钮CE
ce.setFont(Font.font(40));
ce.setMinHeight(50);
ce.setMinWidth(140);
ce.setStyle("-fx-background-color: orange");
gPane.add(ce,1,1);
Button kl=new Button("(");//按钮(
kl.setFont(Font.font(40));
kl.setMinHeight(50);
kl.setMinWidth(140);
kl.setStyle("-fx-background-color: orange");
gPane.add(kl,2,1);
Button kr=new Button(")");//按钮)
kr.setFont(Font.font(40));
kr.setMinHeight(50);
kr.setMinWidth(140);
kr.setStyle("-fx-background-color: orange");
gPane.add(kr,3,1);
Button j=new Button("7");//按钮7
j.setFont(Font.font(40));
j.setMinHeight(50);
j.setMinWidth(140);
gPane.add(j,0,2);
Button e=new Button("8");//按钮8
e.setFont(Font.font(40));
e.setMinHeight(50);
e.setMinWidth(140);
gPane.add(e,1,2);
Button s=new Button("9");//按钮9
s.setFont(Font.font(40));
s.setMinHeight(50);
s.setMinWidth(140);
gPane.add(s,2,2);
Button x=new Button("/");//按钮/
x.setFont(Font.font(40));
x.setMinHeight(50);
x.setMinWidth(140);
x.setStyle("-fx-background-color: cyan");
gPane.add(x,3,2);
Button a=new Button("4");//按钮4
a.setFont(Font.font(40));
a.setMinHeight(50);
a.setMinWidth(140);
gPane.add(a,0,3);
Button f=new Button("5");//按钮5
f.setFont(Font.font(40));
f.setMinHeight(50);
f.setMinWidth(140);
gPane.add(f,1,3);
Button l=new Button("6");//按钮6
l.setFont(Font.font(40));
l.setMinHeight(50);
l.setMinWidth(140);
gPane.add(l,2,3);
Button z=new Button("*");//按钮*
z.setFont(Font.font(40));
z.setMinHeight(50);
z.setMinWidth(140);
z.setStyle("-fx-background-color: cyan");
gPane.add(z,3,3);
Button y=new Button("1");//按钮1
y.setFont(Font.font(40));
y.setMinHeight(50);
y.setMinWidth(140);
gPane.add(y,0,4);
Button r=new Button("2");//按钮2
r.setFont(Font.font(40));
r.setMinHeight(50);
r.setMinWidth(140);
gPane.add(r,1,4);
Button m=new Button("3");//按钮3
m.setFont(Font.font(40));
m.setMinHeight(50);
m.setMinWidth(140);
gPane.add(m,2,4);
Button q=new Button("-");//按钮-
q.setFont(Font.font(40));
q.setMinHeight(50);
q.setMinWidth(140);
q.setStyle("-fx-background-color: cyan");
gPane.add(q,3,4);
Button d=new Button(".");//按钮.
d.setFont(Font.font(40));
d.setMinHeight(50);
d.setMinWidth(140);
gPane.add(d,0,5);
Button i=new Button("0");//按钮0
i.setFont(Font.font(40));
i.setMinHeight(50);
i.setMinWidth(140);
gPane.add(i,1,5);
Button u=new Button("=");//按钮=
u.setFont(Font.font(40));
u.setMinHeight(50);
u.setMinWidth(140);
gPane.add(u,2,5);
Button b=new Button("+");//按钮+
b.setFont(Font.font(40));
b.setMinHeight(50);
b.setMinWidth(140);
b.setStyle("-fx-background-color: cyan");
gPane.add(b,3,5);
Scene scene=new Scene(pane);
primaryStage.setTitle("Calculator");
primaryStage.setScene(scene);
primaryStage.show();
}
}