Created
July 27, 2015 18:30
-
-
Save driversti/0453cf05cae91d6f58e4 to your computer and use it in GitHub Desktop.
Simple Calculator
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package lesson5.mycalculator; | |
import javax.swing.*; | |
import java.awt.*; | |
public class Calculator { | |
// Объявление всех компонентов калькулятора. | |
JPanel windowContent; | |
JTextField displayField; | |
JButton button0; | |
JButton button1; | |
JButton button2; | |
JButton button3; | |
JButton button4; | |
JButton button5; | |
JButton button6; | |
JButton button7; | |
JButton button8; | |
JButton button9; | |
JButton buttonPoint; | |
JButton buttonEqual; | |
JButton buttonPlus; | |
JButton buttonMinus; | |
JButton buttonMultiplication; | |
JButton buttonDivision; | |
JPanel p1; | |
JPanel p2; | |
// В конструкторе создаются все компоненты | |
// и добавляются на фрейм с помощью комбинации | |
// Borderlayout и Gridlayout | |
Calculator() { | |
windowContent = new JPanel(); | |
// Задаём схему для этой панели | |
BorderLayout bl = new BorderLayout(); | |
windowContent.setLayout(bl); | |
// Создаём и отображаем поле | |
// Добавляем его в Северную область окна | |
displayField = new JTextField(30); | |
windowContent.add("North", displayField); | |
// Создаём кнопки, используя конструктор | |
// класса JButton, который принимает текст | |
// кнопки в качестве параметра | |
button0 = new JButton("0"); | |
button1 = new JButton("1"); | |
button2 = new JButton("2"); | |
button3 = new JButton("3"); | |
button4 = new JButton("4"); | |
button5 = new JButton("5"); | |
button6 = new JButton("6"); | |
button7 = new JButton("7"); | |
button8 = new JButton("8"); | |
button9 = new JButton("9"); | |
buttonPoint = new JButton("."); | |
buttonEqual = new JButton("="); | |
buttonPlus = new JButton("+"); | |
buttonMinus = new JButton("-"); | |
buttonMultiplication = new JButton("*"); | |
buttonDivision = new JButton("/"); | |
// Создаём панель с GridLayout | |
// которая содержит 12 кнопок - 10 кнопок с числами | |
// и кнопки с точкой и знаком равно | |
p1 = new JPanel(); | |
GridLayout gl = new GridLayout(4, 3); | |
p1.setLayout(gl); | |
// Добавляем кнопки на панель p1 | |
p1.add(button1); | |
p1.add(button2); | |
p1.add(button3); | |
p1.add(button4); | |
p1.add(button5); | |
p1.add(button6); | |
p1.add(button7); | |
p1.add(button8); | |
p1.add(button9); | |
p1.add(button0); | |
p1.add(buttonPoint); | |
p1.add(buttonEqual); | |
p2 = new JPanel(); | |
GridLayout gl2 = new GridLayout(4, 1); | |
p2.setLayout(gl2); | |
p2.add(buttonPlus); | |
p2.add(buttonMinus); | |
p2.add(buttonMultiplication); | |
p2.add(buttonDivision); | |
// Помещаем панель p1 в центральную область окна | |
windowContent.add("Center", p1); | |
windowContent.add("East", p2); | |
//Создаём фрейм и задаём его основную панель | |
JFrame frame = new JFrame("Calculator"); | |
frame.setContentPane(windowContent); | |
// делаем размер окна достаточным | |
// для того, чтобы вместить все компоненты | |
frame.pack(); | |
// Наконец, отображаем окно | |
frame.setVisible(true); | |
frame.setBounds(100, 100, 500, 500); | |
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); | |
} | |
public static void main(String[] args) { | |
Calculator calc = new Calculator(); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment