📄 billpane.java
字号:
rs.next();
//System.out.print(rs.getFloat(1));
temp = temp - (float) rs.getFloat(1); //将最大容量减去库存容量得到剩余容量
}
catch (Exception ex)
{
ex.printStackTrace();
}
return temp;
}
//按纱线ID号对纱线进行查找的方法,需要输入查询条件
private ResultSet lookUpYarn_ID(String condition)
{
ResultSet rs = null;
try {
if (jRadioButton1.isSelected())
{
rs = st.executeQuery(
"select YID,YColorID,YColorName,YVariety,Client,CColor from YarnIn where YID like '" +
condition + "%'");
}
//在条件不为空时的查询语句
else if(jRadioButton2.isSelected())
{
rs = st.executeQuery(
"select YID,YColorID,YColorName,YVariety,ClientName,ClientColor from YarnIn where ClientColor like '" +
condition + "%'");
}
}
catch (Exception ex)
{
ex.printStackTrace();
}
return rs;
}
//查询文本框文本更改的监听方法
public void jTextField3_ChangedUpdate(DocumentEvent e)
{
String[] columnName = {"纱线ID", "色号", "色名", "品种规格", "客户", "客户色号"};
tableDisplay(lookUpYarn_ID(jTextField3.getText()),columnName);
}
//查询文本框文本插入的监听方法
public void jTextField3_insertUpdate(DocumentEvent e)
{
String[] columnName = {"纱线ID", "色号", "色名", "品种规格", "客户", "客户色号"};
tableDisplay(lookUpYarn_ID(jTextField3.getText()),columnName);
}
//查询文本框文本移除的监听方法
public void jTextField3_removeUpdate(DocumentEvent e)
{
String[] columnName = {"纱线ID", "色号", "色名", "品种规格", "客户", "客户色号"};
tableDisplay(lookUpYarn_ID(jTextField3.getText()),columnName);
}
//查询条件选择框的物品状态监听
public void jRadioButton_itemStateChanged(ItemEvent e)
{
if (jRadioButton1.isSelected())
{
jTextField3.setText("");
String[] columnName = {"纱线ID", "色号", "色名", "品种规格", "客户", "客户色号"};
tableDisplay(lookUpYarn_ID(jTextField3.getText()), columnName);
}
else if (jRadioButton2.isSelected())
{
jTextField3.setText("");
String[] columnName = {"纱线ID", "色号", "色名", "品种规格", "客户", "客户色号"};
tableDisplay(lookUpYarn_ID(jTextField3.getText()), columnName);
}
}
//新增明细按钮的动作监听
public void jButton5_actionPerformed(ActionEvent e)
{
((YarnTableModel)jTable2.getModel()).addTableItem();
}
//删除明细按钮的动作监听
public void jButton6_actionPerformed(ActionEvent e)
{
//返回表格选择了的行的索引
int[] sRows = jTable2.getSelectedRows();
YarnTableModel temp = (YarnTableModel)jTable2.getModel();
temp.deleteRows(sRows);
//重新计算总金额和总重量,并更新文本框
jTextField4.setText(String.valueOf(tableColumnSum(jTable2,6)));
jTextField5.setText(String.valueOf(tableColumnSum(jTable2,7)));
}
//纱线组合框ID的动作监听方法实线
public void yarnIDJComboBoxEditor(ActionEvent e)
{
if(jTable2.getSelectedRow()>-1)
{
try
{
ResultSet rs = jf.executeQuery(
"select YColorID,YVariety from Yarn where YID = '" +
jTable2.getValueAt(jTable2.getSelectedRow(),1) + "'");
if (rs.next())
{
jTable2.setValueAt(rs.getString(1), jTable2.getSelectedRow(),
2);
jTable2.setValueAt(rs.getString(2), jTable2.getSelectedRow(),
3);
((YarnTableModel)jTable2.getModel()).addTableItem();
}
else
{
jTable2.setValueAt("", jTable2.getSelectedRow(), 2);
jTable2.setValueAt("", jTable2.getSelectedRow(), 3);
}
} catch (Exception ex)
{
ex.printStackTrace();
}
}
}
//纱线表格的YID组合框的单元改变监听方法实现
public void yarnIDJComboBoxEditingStopped(ChangeEvent e)
{
if(jTable2.getSelectedRow()>-1)
{
try
{
ResultSet rs = jf.executeQuery(
"select YColorID,YVariety from Yarn where YID = '" +
jTable2.getValueAt(jTable2.getSelectedRow(),1) + "'");
if (rs.next())
{
jTable2.setValueAt(rs.getString(1), jTable2.getSelectedRow(),
2);
jTable2.setValueAt(rs.getString(2), jTable2.getSelectedRow(),
3);
((YarnTableModel)jTable2.getModel()).addTableItem();
}
else
{
jTable2.setValueAt("", jTable2.getSelectedRow(), 2);
jTable2.setValueAt("", jTable2.getSelectedRow(), 3);
}
} catch (Exception ex)
{
ex.printStackTrace();
}
}
}
public void yarnIDJComboBoxEditingCanceled(ChangeEvent e)
{
}
//明细表的金额和重量编辑框的编辑完成监听方法
public void yarnMWJTextFieldCellEditingStopped(ChangeEvent e)
{
if (e.getSource() == jTable2.getColumnModel().getColumn(6).getCellEditor())
{
float sum = tableColumnSum(jTable2,6);
jTextField4.setText(String.valueOf(sum));
}
if (e.getSource() == jTable2.getColumnModel().getColumn(7).getCellEditor())
{
float sum = tableColumnSum(jTable2,7);
jTextField5.setText(String.valueOf(sum));
}
}
//统计表格列总和,参数为表格JTable和列Column的索引
public float tableColumnSum(JTable table,int columnIndex)
{
float sum = 0;
for (int i = 0; i < table.getRowCount(); i++)
{
try
{
float t = Float.valueOf(Float.valueOf((String) table.getValueAt(i,
columnIndex)));
sum = sum + t;
}
catch (Exception ex)
{
sum = sum;
}
}
return sum;
}
public void yarnMWJTextFieldCellEditingCanceled(ChangeEvent e)
{
}
}
//删除明细按钮的动作监听类
class BillPane_jButton6_actionAdapter implements ActionListener {
private BillPane adaptee;
BillPane_jButton6_actionAdapter(BillPane adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton6_actionPerformed(e);
}
}
//新增明细按钮动作监听类
class BillPane_jButton5_actionAdapter implements ActionListener {
private BillPane adaptee;
BillPane_jButton5_actionAdapter(BillPane adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton5_actionPerformed(e);
}
}
//选择查询条件的jRadioButton的物品监听类
class BillPane_jRadioButton_itemAdapter implements ItemListener {
private BillPane adaptee;
BillPane_jRadioButton_itemAdapter(BillPane adaptee) {
this.adaptee = adaptee;
}
public void itemStateChanged(ItemEvent e) {
adaptee.jRadioButton_itemStateChanged(e);
}
}
//新建单据的动作监听类
class BillPane_jButton1_actionAdapter implements ActionListener
{
private BillPane adaptee;
BillPane_jButton1_actionAdapter(BillPane adaptee)
{
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e)
{
adaptee.jButton1_actionPerformed(e);
}
}
//仓库选择框的物品监听类
class BillPane_jComboBox2_itemAdapter implements ItemListener
{
private BillPane adaptee;
BillPane_jComboBox2_itemAdapter(BillPane adaptee)
{
this.adaptee = adaptee;
}
public void itemStateChanged(ItemEvent e)
{
adaptee.jComboBox2_itemStateChanged(e);
}
}
//jTextField3的文档监听器类
class BillPane_jTextField3_DocumentAdapter implements DocumentListener
{
private BillPane adaptee;
BillPane_jTextField3_DocumentAdapter(BillPane adaptee)
{
this.adaptee = adaptee;
}
public void changedUpdate(DocumentEvent e)
{
adaptee.jTextField3_ChangedUpdate(e);
}
public void insertUpdate(DocumentEvent e)
{
adaptee.jTextField3_insertUpdate(e);
}
public void removeUpdate(DocumentEvent e)
{
adaptee.jTextField3_removeUpdate(e);
}
}
//纱线组合选择框的事件监听类
class BillPane_yarnIDJComboBoxEditor_ActionListener implements ActionListener
{
private BillPane adaptee;
BillPane_yarnIDJComboBoxEditor_ActionListener(BillPane adaptee)
{
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e)
{
adaptee.yarnIDJComboBoxEditor(e);
}
}
//纱线表格的YID组合选择框的单元改变监听类
class BillPane_yarnIDJComboBoxCell_CellListener implements CellEditorListener
{
private BillPane adaptee;
BillPane_yarnIDJComboBoxCell_CellListener(BillPane adaptee)
{
this.adaptee = adaptee;
}
public void editingCanceled(ChangeEvent e)
{
adaptee.yarnIDJComboBoxEditingCanceled(e);
}
public void editingStopped(ChangeEvent e)
{
adaptee.yarnIDJComboBoxEditingStopped(e);
}
}
//表格选择模式的双击监听类
class BillPane_tableDoubleClick_MouseListener implements MouseListener
{
private BillPane adaptee;
BillPane_tableDoubleClick_MouseListener(BillPane adaptee)
{
this.adaptee = adaptee;
}
public void mouseClicked(MouseEvent e)
{
}
public void mouseEntered(MouseEvent e)
{
}
public void mouseExited(MouseEvent e)
{
}
public void mousePressed(MouseEvent e)
{
}
//但鼠标两次点击完成是计算时间差以判断是否双击事件
public void mouseReleased(MouseEvent e)
{
if (doubleClick())//双击的判断
{
adaptee.tableDoubleClick(e);
}
}
long clickTime = 0;
public boolean doubleClick()
{
long nowTime = (new Date()).getTime();
if ( (nowTime - clickTime) < 300) {
clickTime = nowTime;
return true;
}
clickTime = nowTime;
return false;
}
}
//纱线表格的金额和重量编辑框的单元改变监听类
class BillPane_yarnMWJTextFieldCell_CellListener implements CellEditorListener
{
private BillPane adaptee;
BillPane_yarnMWJTextFieldCell_CellListener(BillPane adaptee)
{
this.adaptee = adaptee;
}
public void editingCanceled(ChangeEvent e)
{
adaptee.yarnMWJTextFieldCellEditingCanceled(e);
}
public void editingStopped(ChangeEvent e)
{
adaptee.yarnMWJTextFieldCellEditingStopped(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -