永发信息网

Java制作最简单的windows窗口

答案:6  悬赏:30  手机版
解决时间 2021-07-17 01:49
  • 提问者网友:你挡着我发光了
  • 2021-07-16 20:10

用Java制作一个简单的windows窗口,要求实现窗口的最小化,最大化和关闭功能。添加“文件”,“编辑”和“工具”三个菜单。

在“文件”菜单中添加“打开”、“关闭”、“保存”、“退出”四个菜单项,分别实现他们的功能。

在“编辑”菜单中添加“剪切”、“复制”、“粘贴”三个菜单项,分别实现他们的功能。

在“工具”菜单中添加一个“计算器”菜单项,并实现一个计算器(单击该“计算器”菜单项会弹出一个计算器),该计算器除了能进行四则运算以外还可以实现复数运算功能。

最佳答案
  • 五星知识达人网友:不如潦草
  • 2021-07-16 20:46

计算器可以用windows自带的,界面用eclipse swt做如果你会就去找找看,不会要做出来就那点MOney就行了.

全部回答
  • 1楼网友:风格不统一
  • 2021-07-17 00:09

这个是简单的计算器代码,你看看

import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Calculator extends JFrame { private Container container; private GridBagLayout layout; private GridBagConstraints constraints; private JTextField displayField;// 计算结果显示区 private String lastCommand;// 保存+,-,*,/,=命令 private double result;// 保存计算结果 private boolean start;// 判断是否为数字的开始 public Calculator() { super("Calculator"); container = getContentPane(); layout = new GridBagLayout(); container.setLayout(layout); constraints = new GridBagConstraints(); start = true; result = 0; lastCommand = "="; displayField = new JTextField(20); displayField.setHorizontalAlignment(JTextField.RIGHT); constraints.gridx = 0; constraints.gridy = 0; constraints.gridwidth = 4; constraints.gridheight = 1; constraints.fill = GridBagConstraints.BOTH; constraints.weightx = 100; constraints.weighty = 100; layout.setConstraints(displayField, constraints); container.add(displayField); ActionListener insert = new InsertAction(); ActionListener command = new CommandAction(); // addButton("Backspace", 0, 1, 2, 1, insert); // addButton("CE", 2, 1, 1, 1, insert); // addButton("C", 3, 1, 1, 1, insert); addButton("7", 0, 2, 1, 1, insert); addButton("8", 1, 2, 1, 1, insert); addButton("9", 2, 2, 1, 1, insert); addButton("/", 3, 2, 1, 1, command); addButton("4", 0, 3, 1, 1, insert); addButton("5", 1, 3, 1, 1, insert); addButton("6", 2, 3, 1, 1, insert); addButton("*", 3, 3, 1, 1, command); addButton("1", 0, 4, 1, 1, insert); addButton("2", 1, 4, 1, 1, insert); addButton("3", 2, 4, 1, 1, insert); addButton("-", 3, 4, 1, 1, command); addButton("0", 0, 5, 1, 1, insert); // addButton("+/-", 1, 5, 1, 1, insert);// 只显示"-"号,"+"没有实用价值 addButton(".", 2, 5, 1, 1, insert); addButton("+", 3, 5, 1, 1, command); addButton("=", 0, 6, 4, 1, command); this.setResizable(false); setSize(180, 200); setVisible(true); } private void addButton(String label, int row, int column, int with, int height, ActionListener listener) { JButton button = new JButton(label); constraints.gridx = row; constraints.gridy = column; constraints.gridwidth = with; constraints.gridheight = height; constraints.fill = GridBagConstraints.BOTH; button.addActionListener(listener); layout.setConstraints(button, constraints); container.add(button); } private class InsertAction implements ActionListener { public void actionPerformed(ActionEvent event) { String input = event.getActionCommand(); if (start) { displayField.setText(""); start = false; if (input.equals("+/-")) displayField.setText(displayField.getText() + "-"); } if (!input.equals("+/-")) { if (input.equals("Backspace")) { String str = displayField.getText(); if (str.length() > 0) displayField .setText(str.substring(0, str.length() - 1)); } else if (input.equals("CE") || input.equals("C")) { displayField.setText("0"); start = true; } else displayField.setText(displayField.getText() + input); } } } private class CommandAction implements ActionListener { public void actionPerformed(ActionEvent evt) { String command = evt.getActionCommand(); if (start) { lastCommand = command; } else { calculate(Double.parseDouble(displayField.getText())); lastCommand = command; start = true; } } } public void calculate(double x) { if (lastCommand.equals("+")) result += x; else if (lastCommand.equals("-")) result -= x; else if (lastCommand.equals("*")) result *= x; else if (lastCommand.equals("/")) result /= x; else if (lastCommand.equals("=")) result = x; displayField.setText("" + result); } public static void main(String[] args) { Calculator calculator = new Calculator(); calculator.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } }

  • 2楼网友:胯下狙击手
  • 2021-07-16 23:50
5分 不做
  • 3楼网友:冷風如刀
  • 2021-07-16 22:22

晕啊!!!那么大的量就给5分呀!不来!

  • 4楼网友:woshuo
  • 2021-07-16 21:25

就是和系统自带的记事差不多嘛!

我们刚完成那个作业成绩

  • 5楼网友:千杯敬自由
  • 2021-07-16 21:01

那些事菜单项,用MenuItem可以创建,要实现功能就需要注册监听器,实现事件的处理功能!

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯