2013-11-15 2 views
0

NetBeans에서 'Fashion and Footwear'와 'Shopping Cart'의 두 가지 형식이 있습니다. 첫 번째 양식에는 4 개의 버튼이 있습니다. 다른 테이블에는 CurrentPurchases 및 PreviousPurchases라는 두 개의 테이블이 있습니다. 첫 x 째 양식에서 단추를 누르면 항목 이름과 가격이 다른 양식의 CurrentPurchases 테이블로 전송됩니다. 어떤 코드/쿼리를 사용해야합니까? 이 코드를 시도했지만 작동하지 않았습니다.netbeans의 다른 폼에있는 테이블에 행 추가하기

DefaultTableModel CurrPurchases=(DefaultTableModel)CurrentPurchases.getModel(); 

주 : CurrentPurchases 표는 다른 형태가 아닌 이러한 형태

int dress1=100; 
DefaultTableModel CurrPurchases=(DefaultTableModel)CurrentPurchases.getModel(); 
double price1=Double.parseDouble(Price1.getText()); 
int rows=CurrPurchases.getRowCount(); 
if(rows > 0){ 
    for (int i = 0; i < rows; i++) { 
     CurrPurchases.removeRow(0); 
    } 
} 
try{ 
    Connection connection=getConnection(); 
    ResultSet curprs=null; 
    Statement buy1stmt=connection.createStatement(); 
    String Buy1Query1="Update Products set Quantity=Quantity-1 where Product_no=1;"; 
    String Buy1Query2="Insert into Buy values('"+Pname1.getText()+"',"+price1+");"; 
    buy1stmt.executeUpdate(Buy1Query1); 
    buy1stmt.executeUpdate(Buy1Query2); 
    dress1--; 
    if(dress1==0){ 
     JOptionPane.showMessageDialog(null,"Sorry, This Item is Out of Stock!"); 
    } 
    new ShoppingCart().setVisible(true); 
    PreparedStatement buy2stmt=connection.prepareStatement("Select * from Buy;"); 
    curprs=buy2stmt.executeQuery(); 
    if(curprs.last()){ 
     CurrPurchases.addRow(new Object[]{curprs.getString(1),curprs.getDouble(2)}); 
    } 
} 
catch(Exception ex){ 
    ex.printStackTrace(); 
} 
finally{} 

이 줄

오류이다.

답변

1

다음에 문제가 있습니다. 당신은 DefaultTableModel 새로 만들고이 새로운 행을 추가하지만, 지역의 객체이고 나중에 사용되지 않습니다

DefaultTableModel CurrentPurchases= new DefaultTableModel(); 
Pname=rs.getString("ProductName"); 
Price=rs.getString("Price"); 
CurrentPurchases.addRow(new Object[]{Pname,Price}); 

당신은 당신이 새 행을 추가 할, 테이블에서 모델을 얻을 필요가있다. 여기 targetTable

public void init() { 
     targetTable = new JTable(new DefaultTableModel()); 
    } 

    public void addRow(){ 
     ((DefaultTableModel)targetTable.getModel()).addRow(new Object[]{}); 
    } 

이 테이블 (CurrentPurchases)입니다 : 예를 들어, 당신은 생성 테이블과 그 테이블에 행을 추가하는 2 가지 방법이있다. 당신은 그것에 대한 참조가 필요합니다.

tutorial for JTable을 읽으십시오.