import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JComponent;
import javax.swing.SwingUtilities;
import net.java.dev.designgridlayout.DesignGridLayout;
import java.io.*;
import net.java.dev.designgridlayout.Tag;
import javax.swing.JButton;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import java.sql.*;
class table1
{
JFrame JF;
Container C;
JPanel JP;
JLabel creditLabel;
JComboBox credit;
String[] Credit = {"Vasan Phalke", "Pansare", "Anil Kg", "Suresh"};
String[] Names = {"Name", "Qty", "Rate/ Kg", "Rate/Dzn.", "Total Amt."};
JTable table;
DefaultTableModel model;
JScrollPane scrollPane;
public table1()
{
JF = new JFrame();
JP = new JPanel();
C= JF.getContentPane();
JF.pack();
JF.setLocationRelativeTo(null);
JF.setVisible(true);
DesignGridLayout layout = new DesignGridLayout(C);
creditLabel = new JLabel("Credit");
credit = new JComboBox<String>(Credit);
model = new DefaultTableModel(Names,5);
table =new JTable(model){@Override
public boolean isCellEditable(int arg0, int arg1)
{
return true;
}
};
scrollPane= new JScrollPane(table);
layout.row().grid(creditLabel).add(credit);
layout.emptyRow();
layout.row().grid().add(table);
C.add(JP);
}
public static void main(String args[])
{
new table1();
}
}
通过点击组合框的值,它应该出现在表格的名称列中,并且应该对表格进行哪些更改以进行自动计算,即当我输入数量和比率时,应自动计算总金额。 如何完成所有这些事情,请帮忙。 提前谢谢。
答案 0 :(得分:3)
本教程介绍如何使用组合框作为表中列的编辑器。这是你应该做的,而不是单独的组合框。
要计算金额,您需要创建自定义TableModel并覆盖setValueAt()
方法。每当数量或费率发生变化时,您都会重新计算金额。