java
  • swing
  • jlayeredpane
  • 2011-03-19 5 views -1 likes 
    -1

    String 유형을 JLayeredPane으로 유형 변환하는 방법이 있습니까? 나는 다음과 같은 오류를 얻고있다JLayeredPane에 대한 유형 변환 문자열

    private static void build_tables() { 
        String sql="SELECT * FROM pos_tables WHERE pos_company_id='" 
         +global_variables.company_id 
         +"' AND shop_type='" 
         +global_variables.shop_type 
         +"'"; 
        if(mysql_query.count_mysqls(variables.con.conn, sql)>0){ 
         try { 
          ResultSet rs = mysql_query.execute_mysql(variables.con.conn, sql); 
          while (rs.next()) { 
           JLayeredPane JL = (JLayeredPane)rs.getObject("parent_floor"); 
           tablesetup.addButton(rs.getString("table_name"), 
            Integer.parseInt(rs.getString("x")), 
            Integer.parseInt(rs.getString("y")), JL);  
          } 
         } catch (SQLException ex) { 
          Logger.getLogger(builder.class.getName()).log(Level.SEVERE, null, ex); 
         } 
        } 
    } 
    

    :

    Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: 
    java.lang.String cannot be cast to javax.swing.JLayeredPane
    +0

    포맷 변환 된 코드; 잘못된 경우 되돌려주십시오. – trashgod

    답변

    1
    JLayeredPane JL = (JLayeredPane)rs.getObject("parent_floor"); 
    

    이 데이터베이스는 JLayeredPane 객체를 포함하지 않는 다음 내가 사용하고있는 코드입니다. 문자열을 포함합니다.

    무엇을하려하십니까? JLayeredPane을 사용하는 이유는 무엇입니까?

    그냥 JPanel을 사용하십시오. 그런 다음 데이터베이스 쿼리에서 반환 된 문자열을 사용하여 JLabel을 만든 다음 해당 레이블을 패널에 추가 할 수 있습니다.

    뭔가 같은 :

    String text = rs.getObject("parent_floor").toString(); 
    JLabel label = new JLabel(text); 
    panel.add(label); 
    
    +0

    난 탭 패널을 사용하고 각 탭 안에 동적으로 버튼과 라벨을 추가합니다 (다른 layeredpane 안에 있음) JPanel을 사용하여이 작업을 수행 할 수 있습니까? Jpanel에 다른 Jpanel을 추가 할 수 있습니까? – Deepak

    +0

    JPanels를 임의로 깊게 중첩시킬 수 있습니다. – MeBigFatGuy

    관련 문제