2012-08-01 1 views
3

현재 jcombobox가 채워진 쿼리를 사용하는 Java 프로그램을 작성하고 있습니다. 프로그램을 실행할 때 기본 값을 선택하는 방법이 있는지 궁금합니다. 내 쿼리는 알파벳 순으로 나열된 언어 목록이지만 영어 (목록의 중간에 있음)를 기본값으로 사용하는 것이 가능한지 궁금합니다.쿼리로 채워진 jcombobox의 기본값 설정

난 당신이 수동으로 하드 코딩을 JComboBox에 값이

jcombobox.setSelectedIndex(int anIndex); 

또는

jcombobox.setSelectedItem(Object anObject); 

으로 기본 변수를 설정할 수 있지만 때 내가 확실하지 오전 때 ResultSet의 루프와 웁니다 것을 알고있다 jcombobox.

현재 내 코드는 다음과 같습니다

languageLabel =new JLabel("Languages:"); 
rowFour.add(languageLabel,BorderLayout.WEST);//adding to my current panel 
langbox = new JComboBox(); 
rowFour.add(langbox,BorderLayout.WEST); 
try 
{ 
    con = DriverManager.getConnection ("jdbc:oracle:thin:@localHost:portNumber:ORCL", "username", "password"); 
    statement = con.createStatement(); 
} 
catch(SQLException sqle) 
      { 
      System.out.println(sqle);  
      } 
langbox.removeAllItems(); 
langbox.addItem("Please Select..."); 
try 
    { 
     ResultSet rs = statement.executeQuery("select language from language order by 1"); 
     while (rs.next()) 
      { 
       langbox.addItem(rs.getString(1)); 
       //Thinking that this is where a default value would be located 
      } 

    } 
catch(Exception e) 
    { 
    System.err.println(e); 
    } 

이 시간 내 주셔서 감사합니다.

답변

3
ResultSet rs = statement.executeQuery("select language from language order by 1"); 
while (rs.next()) { 
    langbox.addItem(rs.getString(1)); 
    //I'm thinking that this is where a default value would be located 
    if(rs.getString(1).equals(myDefaultLanguageVariable)) { 
     langbox.setSelectedItem(rs.getString(1)); 
    } 
} 

btw : 코드를 정리해야합니다.

+0

대단히 감사합니다. – SamiSunshine