Читайте также: |
|
Введите кол-во строк в таблице
Введите название страны
Russia
Введите количество жителей в данной стране
Введите количество губерний в данной стране
Введите название губернии
Orel
Введите количество жителей в данной губернии
Введите название страны
USA
Введите количество жителей в данной стране
Введите количество губерний в данной стране
Введите название губернии
New-York
Введите количество жителей в данной губернии
Введите название губернии
Washington
Введите количество жителей в данной губернии
Введите номер записи которую хотите прочитать
Считанная запись:
USA 1000 2:
New-York 600
Washington 400
Задание №8
Составить программу, обеспечивающую создание графического пользовательского интерфейса. Реализовать следующий алгоритм: в 1-е и 2-е поля для редактирования вводятся 2 строки, состоящие из «0» и «1». При нажатии кнопки “Proccess” в 3-е поле для редактирования заносится результат логической операции s1&s2. При нажатии кнопки “Sbros” все поля очищаются.
Блок схема
Код программы
import javax.swing.SwingUtilities;
public class main {
public static void main(String[] args) {
SwingUtilities. invokeLater (new Runnable() {
public void run() {
new okno();
}
});
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class okno implements ActionListener {
JTextField redak1;
JTextField redak2;
JTextField redak3;
okno() {
//инициализация окна
JFrame pole1 = new JFrame("Zadaniye 8");
pole1.getContentPane().setLayout(new FlowLayout());
pole1.setSize(340, 200);
pole1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//инициализация меток
JLabel label1 = new JLabel("1-й операнд:");
JLabel label2 = new JLabel("2-й операнд:");
JLabel label3 = new JLabel("Результат:");
//инициализация полей для ввода информации
redak1 = new JTextField(20);
redak2 = new JTextField(20);
redak3 = new JTextField(20);
redak1.setActionCommand("Proccess");
redak2.setActionCommand("Proccess");
redak3.setActionCommand("Sbros");
redak1.addActionListener(this);
redak2.addActionListener(this);
redak3.addActionListener(this);
//добавление меток и полей для редактирования на панель контента
pole1.getContentPane().add(label1);
pole1.getContentPane().add(redak1);
pole1.getContentPane().add(label2);
pole1.getContentPane().add(redak2);
pole1.getContentPane().add(label3);
pole1.getContentPane().add(redak3);
//инициализация кнопок
JButton kAction = new JButton("Proccess");
JButton kSbros = new JButton("Sbros");
kAction.addActionListener(this);
kSbros.addActionListener(this);
//размещение кнопок на окне
pole1.getContentPane().add(kAction);
pole1.getContentPane().add(kSbros);
pole1.setVisible(true);
}
public void actionPerformed(ActionEvent sob) {
//очистка полей
if (sob.getActionCommand().equals("Sbros"))
{
redak1.setText("");
redak2.setText("");
redak3.setText("");
}
//обработка
if (sob.getActionCommand().equals("Proccess")){
try{
String s1 = new String(redak1.getText());
String s2 = new String(redak2.getText());
StringBuffer str = new StringBuffer();
int l = Math.max(s1.length(), s2.length());
for (int i=0; i<l; i++)
{
if (s1.length()<=i) s1 = new String(s1+"0");
if (s2.length()<=i) s2 = new String(s2+"0");
if ((s1.charAt(i)!='0' && s1.charAt(i)!='1') || (s2.charAt(i)!='0' && s2.charAt(i)!='1'))
{
// System.out.println(s1.charAt(i)+" "+s2.charAt(i));
throw new NumberFormatException();
}
if (s1.charAt(i)=='1' && s2.charAt(i)=='1') str.append('1');
else str.append('0');
}
redak3.setText(str.toString());
}catch (NumberFormatException e){
redak3.setText("Введены неверные данные");
}
}
}
}
Дата добавления: 2015-10-29; просмотров: 66 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Структура файла | | | Операторы и структура кода. Управление ходом выполнения программы. |