Лабы Павловский 2018 / ООП ЛР 3
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра вычислительной техники
отчет
по лабораторной работе №3
по дисциплине «Объектно-ориентированное программирование»
Тема: «Обработка событий»
Студент гр. 6307 |
|
Лазарев С. О. |
Преподаватель |
|
Павловский М. Г. |
Санкт-Петербург
2018
СОДЕРЖАНИ
ЦЕЛЬ 3
ЗАДАНИЕ 3
ОПИСАНИЕ ДЕЙСТВИЙ СЛУШАТЕЛЕЙ 4
КОНТРОЛЬНЫЕ ПРИМЕРЫ 4
ТЕКСТ ДОКУМЕНТАЦИИ 5
ВЫВОДЫ 5
ИСХОДНЫЙ КОД 6
ЦЕЛЬ 3
ЗАДАНИЕ 3
ОПИСАНИЕ ДЕЙСТВИЙ СЛУШАТЕЛЕЙ 4
КОНТРОЛЬНЫЕ ПРИМЕРЫ 4
ТЕКСТ ДОКУМЕНТАЦИИ 5
ВЫВОДЫ 5
ИСХОДНЫЙ КОД 6
ЦЕЛЬ 3
ЗАДАНИЕ 3
ОПИСАНИЕ ДЕЙСТВИЙ СЛУШАТЕЛЕЙ 4
КОНТРОЛЬНЫЕ ПРИМЕРЫ 4
ТЕКСТ ДОКУМЕНТАЦИИ 5
ВЫВОДЫ 5
ИСХОДНЫЙ КОД 6
ЦЕЛЬ
Знакомство со способами подключения слушателей событий к графическим компонентам пользовательского интерфейса.
ЗАДАНИЕ
Выявить события на экранной форме, к трем компонентам экранной формы написать код слушателей. Слушатели должны полностью или частично реализовывать свою функциональность. Вывести на экран результат работы слушателей.
ОПИСАНИЕ ДЕЙСТВИЙ СЛУШАТЕЛЕЙ
Слушатель ActionListener отслеживает нажатие на кнопку Добавить сотрудника, выполняет добавление сотрудника в список, после своей работы выводит сообщение о добавлении сотрудника в список.
Слушатель WindowListener отслеживает закрытие окна, выводит сообщение о том, что пользователь собирается закрыть окно.
Слушатель TableModelListener отслеживает изменения в таблице, выводит сообщение об изменении данных в таблице.
КОНТРОЛЬНЫЕ ПРИМЕРЫ
Контрольные примеры представлен на рисунках 1, 2, 3.
Рис 1. Контрольный пример.
Рис 2. Контрольный пример.
Рис 3. Контрольный пример.
ТЕКСТ ДОКУМЕНТАЦИИ
ВЫВОДЫ
В данной лабораторной работе я познакомился со способами подключения слушателей событий к графическим компонентам пользовательского интерфейса.
ИСХОДНЫЙ КОД
// Слушатели add.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { String[] lol = {"Иванов","Иван","Тест перс"}; model.addRow(lol); JOptionPane.showMessageDialog(window, "Вы добавили сотрудника \""+lol[0]+" "+lol[1]+"\""); } }); window.addWindowListener(new WindowListener() { @Override public void windowOpened(WindowEvent e) { } @Override public void windowClosing(WindowEvent e) { JOptionPane.showMessageDialog(window,"Вы закрываете окно)"); } @Override public void windowClosed(WindowEvent e) { } @Override public void windowIconified(WindowEvent e) { } @Override public void windowDeiconified(WindowEvent e) { } @Override public void windowActivated(WindowEvent e) { } @Override public void windowDeactivated(WindowEvent e) { } }); model.addTableModelListener(new TableModelListener() { @Override public void tableChanged(TableModelEvent e) { JOptionPane.showMessageDialog(window,"Вы изменили данные в таблице"); } }); save.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { try{ checkList();} catch (MyException myEx){ JOptionPane.showMessageDialog(null,myEx.getMessage()); } } }); folder.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { read("file.csv"); JOptionPane.showMessageDialog(window, "Данные загружены из файла file.csv"); } });