2012-06-17 3 views
2

Это код кнопки, который при нажатии на нее запрашивает идентификатор пользователя в базе данных и отображает имя, фамилию и часы. Я хочу написать сообщение (JOptionPane.showMessage()), которое показывает время, в которое пользователь набирает/выключает, так что я думал, что я могу сделать, это добавить «JOptionPane.showMessage()», чтобы сделать именно это , но когда я ставлю этот код (независимо от того, где) есть красная линия, под «ShowMessage» и сообщение об ошибке, говорящее:Простой JOptionPane.showMessage();

==cannot find symbol 
==symbol: method showMessage(java.lang.String) 
==location:class javax.swing.JOptionPane 

Не уверен, что это значит. Любая помощь очень ценится. Спасибо.

private void clockInOutActionPerformed(java.awt.event.ActionEventevt){ 

    // TODO add your handling code here: 
    try{ 
stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); 
      String sql = "SELECT * FROM Students WHERE STUDENTID = ?"; 
     PreparedStatement pstmt = con.prepareStatement(sql); 
     pstmt.setInt(1, Integer.parseInt(jTextField1.getText())); 
     ResultSet rs = pstmt.executeQuery(); 

     if(rs.next()){ 
      String first = rs.getString(2); 
      String last = rs.getString(3); 
      String hours = rs.getString(6); 

      fName.setText(first); 
      lName.setText(last); 
      tHours.setText(hours); 
     }  
    } 
    catch(SQLException err){ 
     JOptionPane.showMessageDialog(Student.this, err.getMessage()); 
    } 
} 
+0

* «Не уверен, что это значит». * Это означает, что вы составляете методы, которых не существует! Иногда, как программисты, нам нужно [прочитать документацию] (http://docs.oracle.com/javase/7/docs/api/javax/swing/JOptionPane.html#method_summary). –

+0

YEP! Ненавижу, когда я это глупо. –

ответ

1

Возможно, вы ошибочно написали имя класса или не импортировали имя класса, проверьте его и повторите попытку. А также то, что сказал Эндрю Саид.

Если вы используете IDE Eclipse, если вы нажмете Ctrl + Shift + o (буква O), он автоматически импортирует все для вас.

Надеюсь, это поможет.

1

Есть несколько вопросов, которые я хочу отметить в этом коде

private void clockInOutActionPerformed(java.awt.event.ActionEvent evt){ 

есть недостающее пространство между типом аргумента и именем аргумента

JOptionPane.showMessageDialog(Student.this, err.getMessage());

существует три метода переопределения для showMessageDialog и для всех из них первый аргумент должен быть типом java.awt.Component, поэтому я предполагаю, что ваш Student расширяет java.awt.Component и содержит вышеупомянутый метод clockInOutActionPerformed.

В противном случае код хочет скомпилировать.

В любом случае, что подразумевается под сообщением

Кроме того, я не могу воспроизвести подобную ошибку вы получаете.

Я думаю, вам нужно проверить версию JDK вы using.JOptionPane не может быть доступен для версии JDK вы используете.