Работа со Swing JavaSE. Нет реакции на нажатие кнопки
Формулировка задачи:
Всем привет. Имеется следующая проблема: нет реакции программы при нажатии Button-а. ActionListener прописан правильно. Даже не представляю какая там может быть ошибка.
Чтобы было все понятно объясняю что делает этот код: Идет считывание таблицы базы данных H2 посредством jdbc и записывается в таблицы с помощью Swing
Вывод таблиц с данными работает почти корректно не считая того что кнопка "Показать таблицу" работает со второго раза =\
Также программа должна уметь искать нужные данные в базе. (Прикреплю скриншот интерфейса программы)
Кнопка "Начать поиск" не реагирует на нажатия вообще. В отладчике при клике показывается, что клик зачтен но активность не начинается. При этом все вроде бы нормально описано.
Буду благодарен за помощь!
Вот описание активности всех кнопок:
"Кнопка - Показать таблицу"
"Кнопка - Начать поиск"
Если потребуется доп.информация по коду я скину.
Листинг программы
- private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
- jButton1.addActionListener(new ActionListener(){
- public void actionPerformed(ActionEvent ae) {
- if(ae.getSource() == jButton1){
- if((String)jComboBox1.getModel().getSelectedItem() == "STUDENT") {
- if(flag1 == 0){
- flag1 = 1;
- JFrame frame = new JFrame("TABLE STUDENT");
- frame.setSize(new Dimension(600, 400));
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setLocationRelativeTo(null);
- frame.setLayout(new GridBagLayout());
- TableModelStudent dataBaseTableModel = new TableModelStudent();
- JTable dataBase = new JTable(dataBaseTableModel);
- JScrollPane dataBaseScrollPane = new JScrollPane(dataBase);
- dataBaseScrollPane.setPreferredSize(new Dimension(400, 400));
- try {
- dataBaseTableModel.addDateBaseStudent();
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- frame.add(dataBaseScrollPane, new GridBagConstraints(0, 0, 1, 1, 1, 1,GridBagConstraints.NORTH,
- GridBagConstraints.BOTH, new Insets(1, 1, 1, 1), 0, 0));
- frame.setVisible(true);
- frame.pack();
- }
- }else if((String)jComboBox1.getModel().getSelectedItem() == "LESSON"){
- if(flag2 == 0){
- flag2 = 1;
- JFrame frame = new JFrame("TABLE LESSON");
- frame.setSize(new Dimension(600, 400));
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setLocationRelativeTo(null);
- frame.setLayout(new GridBagLayout());
- TableModelLesson dataBaseTableModel = new TableModelLesson();
- JTable dataBase = new JTable(dataBaseTableModel);
- JScrollPane dataBaseScrollPane = new JScrollPane(dataBase);
- dataBaseScrollPane.setPreferredSize(new Dimension(400, 400));
- try {
- dataBaseTableModel.addDateBaseLesson();
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- frame.add(dataBaseScrollPane, new GridBagConstraints(0, 0, 1, 1, 1, 1,GridBagConstraints.NORTH,
- GridBagConstraints.BOTH, new Insets(1, 1, 1, 1), 0, 0));
- frame.setVisible(true);
- frame.pack();
- }
- }
- }
- }
- });
- }
Листинг программы
- private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
- jButton2.addActionListener(new ActionListener(){
- public void actionPerformed(ActionEvent ae) {
- if(ae.getSource() == jButton2){
- if (jTextField2.getText() == "STUDENT" || jTextField2.getText() == "student" ||
- jTextField2.getText() == "Student"){
- Connection connect = null;
- Statement stm = null;
- try
- {
- Class.forName("org.h2.Driver");
- connect = DriverManager.getConnection("jdbc:h2:file:\\C:\\Users\\Egor\\test", "sa", "");
- stm = connect.createStatement();
- }
- catch (ClassNotFoundException | SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- ResultSet rs = null;
- try {
- rs = stm.executeQuery("select * from STUDENT");
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- try {
- while(rs.next()){
- if(jTextField1.getText() == rs.getString("ID") || jTextField1.getText() == rs.getString("FIO") ||
- jTextField1.getText() == rs.getString("LESSON_ID") ||
- jTextField1.getText() == rs.getString("MARK")){
- String[] row = {rs.getString("ID"), rs.getString("FIO"), rs.getString("LESSON_ID"),
- rs.getString("MARK")};
- if(flag3 == 0){
- flag3 = 1;
- JFrame frame = new JFrame("TABLE STUDENT");
- frame.setSize(new Dimension(600, 400));
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setLocationRelativeTo(null);
- frame.setLayout(new GridBagLayout());
- TableModelStudent dataBaseTableModel = new TableModelStudent();
- JTable dataBase = new JTable(dataBaseTableModel);
- JScrollPane dataBaseScrollPane = new JScrollPane(dataBase);
- dataBaseScrollPane.setPreferredSize(new Dimension(400, 400));
- dataBaseTableModel.addDate(row);
- frame.add(dataBaseScrollPane, new GridBagConstraints(0, 0, 1, 1, 1,
- 1,GridBagConstraints.NORTH, GridBagConstraints.BOTH,
- new Insets(1, 1, 1, 1), 0, 0));
- frame.setVisible(true);
- frame.pack();
- }
- }
- }
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- }else if(jTextField2.getText() == "LESSON" || jTextField2.getText() == "lesson" || jTextField2.getText() == "Lesson"){
- Connection connect = null;
- Statement stm = null;
- try
- {
- Class.forName("org.h2.Driver");
- connect = DriverManager.getConnection("jdbc:h2:file:\\C:\\Users\\Egor\\test", "sa", "");
- stm = connect.createStatement();
- }
- catch (ClassNotFoundException | SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- ResultSet rs = null;
- try {
- rs = stm.executeQuery("select * from STUDENT");
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- try {
- while(rs.next()){
- if(jTextField1.getText() == rs.getString("ID") || jTextField1.getText() == rs.getString("NAME")){
- String[] row = {rs.getString("ID"), rs.getString("NAME")};
- if(flag3 == 0){
- flag3 = 1;
- JFrame frame = new JFrame("TABLE LESSON");
- frame.setSize(new Dimension(600, 400));
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setLocationRelativeTo(null);
- frame.setLayout(new GridBagLayout());
- TableModelLesson dataBaseTableModel = new TableModelLesson();
- JTable dataBase = new JTable(dataBaseTableModel);
- JScrollPane dataBaseScrollPane = new JScrollPane(dataBase);
- dataBaseScrollPane.setPreferredSize(new Dimension(400, 400));
- dataBaseTableModel.addDate(row);
- frame.add(dataBaseScrollPane, new GridBagConstraints(0, 0, 1, 1, 1,
- 1,GridBagConstraints.NORTH, GridBagConstraints.BOTH,
- new Insets(1, 1, 1, 1), 0, 0));
- frame.setVisible(true);
- frame.pack();
- }
- }
- }
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- }
- }
- }
- });
- }
Решение задачи: «Работа со Swing JavaSE. Нет реакции на нажатие кнопки»
textual
Листинг программы
- private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
- if (jTextField2.getText() == "STUDENT" || jTextField2.getText() == "student" || jTextField2.getText() == "Student"){
- Connection connect = null;
- Statement stm = null;
- try
- {
- Class.forName("org.h2.Driver");
- connect = DriverManager.getConnection("jdbc:h2:file:\\C:\\Users\\Egor\\test", "sa", "");
- stm = connect.createStatement();
- }
- catch (ClassNotFoundException | SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- ResultSet rs = null;
- try {
- rs = stm.executeQuery("select * from STUDENT");
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- try {
- while(rs.next()){
- if(jTextField1.getText() == rs.getString("ID") || jTextField1.getText() == rs.getString("FIO") ||
- jTextField1.getText() == rs.getString("LESSON_ID") || jTextField1.getText() == rs.getString("MARK")){
- String[] row = {rs.getString("ID"), rs.getString("FIO"), rs.getString("LESSON_ID"), rs.getString("MARK")};
- if(flag3 == 0){
- flag3 = 1;
- JFrame frame = new JFrame("TABLE STUDENT");
- frame.setSize(new Dimension(600, 400));
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setLocationRelativeTo(null);
- frame.setLayout(new GridBagLayout());
- TableModelStudent dataBaseTableModel = new TableModelStudent();
- JTable dataBase = new JTable(dataBaseTableModel);
- JScrollPane dataBaseScrollPane = new JScrollPane(dataBase);
- dataBaseScrollPane.setPreferredSize(new Dimension(400, 400));
- dataBaseTableModel.addDate(row);
- frame.add(dataBaseScrollPane, new GridBagConstraints(0, 0, 1, 1, 1, 1,GridBagConstraints.NORTH, GridBagConstraints.BOTH, new Insets(1, 1, 1, 1), 0, 0));
- frame.setVisible(true);
- frame.pack();
- }
- }
- }
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- }else if(jTextField2.getText() == "LESSON" || jTextField2.getText() == "lesson" || jTextField2.getText() == "Lesson"){
- Connection connect = null;
- Statement stm = null;
- try
- {
- Class.forName("org.h2.Driver");
- connect = DriverManager.getConnection("jdbc:h2:file:\\C:\\Users\\Egor\\test", "sa", "");
- stm = connect.createStatement();
- }
- catch (ClassNotFoundException | SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- ResultSet rs = null;
- try {
- rs = stm.executeQuery("select * from STUDENT");
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- try {
- while(rs.next()){
- if(jTextField1.getText() == rs.getString("ID") || jTextField1.getText() == rs.getString("NAME")){
- String[] row = {rs.getString("ID"), rs.getString("NAME")};
- if(flag3 == 0){
- flag3 = 1;
- JFrame frame = new JFrame("TABLE LESSON");
- frame.setSize(new Dimension(600, 400));
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setLocationRelativeTo(null);
- frame.setLayout(new GridBagLayout());
- TableModelLesson dataBaseTableModel = new TableModelLesson();
- JTable dataBase = new JTable(dataBaseTableModel);
- JScrollPane dataBaseScrollPane = new JScrollPane(dataBase);
- dataBaseScrollPane.setPreferredSize(new Dimension(400, 400));
- dataBaseTableModel.addDate(row);
- frame.add(dataBaseScrollPane, new GridBagConstraints(0, 0, 1, 1, 1, 1,GridBagConstraints.NORTH, GridBagConstraints.BOTH, new Insets(1, 1, 1, 1), 0, 0));
- frame.setVisible(true);
- frame.pack();
- }
- }
- }
- } catch (SQLException ex) {
- Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE, null, ex);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д