📄 shangpinruku.java
字号:
package internalFrame.kuCunGuanLi;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.util.Date;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import javax.swing.DefaultCellEditor;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.border.BevelBorder;
import javax.swing.event.CellEditorListener;
import javax.swing.event.ChangeEvent;
import javax.swing.event.InternalFrameAdapter;
import javax.swing.event.InternalFrameEvent;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
import keyListener.InputKeyListener;
import model.TabKucun;
import model.TabRukuDetail;
import model.TabRukuMain;
import model.TabSpinfo;
import model.Userlist;
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import dao.UserDAO;
public class ShangPinRuKu extends JInternalFrame implements
ApplicationContextAware {
private JComboBox shangPinName;
private JTextField jingShouRen;
private JTextField shiFu;
private JTextField weiFu;
private JTextField yingFu;
private JComboBox jieShuanFangShi;
private JComboBox gysName;
private final JTable table;
private final DefaultTableModel dftm;
private JTextField ruKuShiJian;
private JTextField caoZuoYuan;
private UserDAO dao;
private Userlist user;
private ApplicationContext appContext;
public void setApplicationContext(ApplicationContext app)
throws BeansException {
appContext = app;
dao = (UserDAO) appContext.getBean("DAOProxyTransactionFactory");
user = (Userlist) appContext.getBean("loginUser");
}
public ShangPinRuKu() {
super();
shangPinName = new JComboBox();
shangPinName.setMaximumRowCount(9);
shangPinName.setFont(new Font("", Font.PLAIN, 14));
addInternalFrameListener(new InternalFrameAdapter() {
public void internalFrameActivated(final InternalFrameEvent e) {
int rowC = dftm.getRowCount();
for (int i = 0; i < rowC; i++)
dftm.removeRow(0);
caoZuoYuan.setText(user.getId().getName());
ruKuShiJian.setText(new Date().toLocaleString());
List list = dao.queryObject("select id.name from TabGysinfo");
Iterator iterator = list.iterator();
DefaultComboBoxModel dfcbm = (DefaultComboBoxModel) gysName
.getModel();
dfcbm.removeAllElements();
while (iterator.hasNext()) {
dfcbm.addElement(iterator.next().toString().trim());
}
list = dao.queryObject("select id.spname from TabSpinfo");
dfcbm = (DefaultComboBoxModel) shangPinName.getModel();
dfcbm.removeAllElements();
iterator = list.iterator();
while (iterator.hasNext()) {
dfcbm.addElement(iterator.next().toString().trim());
}
TableColumn tc1 = table.getColumnModel().getColumn(0);
TableColumn tc2 = table.getColumnModel().getColumn(1);
tc1.setCellEditor(new DefaultCellEditor(shangPinName));
tc2.setCellEditor(new customCellEditor(dao));
}
});
setMaximizable(true);
setIconifiable(true);
setClosable(true);
getContentPane().setLayout(new GridBagLayout());
setTitle("商品入库");
setBounds(100, 100, 595, 435);
final JScrollPane scrollPane = new JScrollPane();
final GridBagConstraints gridBagConstraints_4 = new GridBagConstraints();
gridBagConstraints_4.insets = new Insets(0, 10, 5, 10);
gridBagConstraints_4.weighty = 1.0;
gridBagConstraints_4.fill = GridBagConstraints.BOTH;
gridBagConstraints_4.gridwidth = 8;
gridBagConstraints_4.gridy = 0;
gridBagConstraints_4.gridx = 0;
getContentPane().add(scrollPane, gridBagConstraints_4);
table = new JTable();
table.addFocusListener(new FocusAdapter() {
public void focusLost(final FocusEvent e) {
if (table.getCellEditor() != null)
table.getCellEditor().stopCellEditing();
}
});
table.setDragEnabled(true);
table.setRowHeight(24);
table.setFont(new Font("", Font.PLAIN, 14));
table.getTableHeader().setFont(new Font("", Font.PLAIN, 14));
table.setGridColor(new Color(192, 192, 192));
table.setShowGrid(true);
table.putClientProperty("Quaqua.Table.style", "striped");
dftm = (DefaultTableModel) table.getModel();
String[] tableHeads = new String[] { "商品名称", "规格", "单价", "数量" };
dftm.setColumnIdentifiers(tableHeads);
table.getDefaultEditor(String.class).addCellEditorListener(// 在单元编辑器事件中修改应付金额
new CellEditorListener() {
public void editingStopped(ChangeEvent arg0) {
int r = table.getRowCount();
yingFu.setText(getMoneyNum(r) + "");
}
public void editingCanceled(ChangeEvent arg0) {
}
});
scrollPane.setViewportView(table);
final JSeparator separator = new JSeparator();
separator.setBorder(new BevelBorder(BevelBorder.LOWERED));
final GridBagConstraints gridBagConstraints_29 = new GridBagConstraints();
gridBagConstraints_29.anchor = GridBagConstraints.SOUTH;
gridBagConstraints_29.insets = new Insets(0, 0, 5, 0);
gridBagConstraints_29.gridwidth = 8;
gridBagConstraints_29.fill = GridBagConstraints.BOTH;
gridBagConstraints_29.gridy = 2;
gridBagConstraints_29.gridx = 0;
getContentPane().add(separator, gridBagConstraints_29);
separator.setForeground(Color.RED);
final JLabel label_2 = new JLabel();
final GridBagConstraints gridBagConstraints_6 = new GridBagConstraints();
gridBagConstraints_6.gridy = 3;
gridBagConstraints_6.gridx = 0;
getContentPane().add(label_2, gridBagConstraints_6);
label_2.setFont(new Font("", Font.PLAIN, 14));
label_2.setText("供应商全称:");
gysName = new JComboBox();
gysName.setMaximumRowCount(9);
final GridBagConstraints gridBagConstraints_7 = new GridBagConstraints();
gridBagConstraints_7.weightx = 1.0;
gridBagConstraints_7.insets = new Insets(0, 0, 0, 10);
gridBagConstraints_7.fill = GridBagConstraints.HORIZONTAL;
gridBagConstraints_7.gridwidth = 3;
gridBagConstraints_7.gridy = 3;
gridBagConstraints_7.gridx = 1;
getContentPane().add(gysName, gridBagConstraints_7);
gysName.setFont(new Font("", Font.PLAIN, 14));
final JLabel label_3 = new JLabel();
final GridBagConstraints gridBagConstraints_8 = new GridBagConstraints();
gridBagConstraints_8.gridy = 3;
gridBagConstraints_8.gridx = 4;
getContentPane().add(label_3, gridBagConstraints_8);
label_3.setFont(new Font("", Font.PLAIN, 14));
label_3.setText("结算方式:");
jieShuanFangShi = new JComboBox();
jieShuanFangShi.setMaximumRowCount(9);
final GridBagConstraints gridBagConstraints_9 = new GridBagConstraints();
gridBagConstraints_9.insets = new Insets(0, 0, 0, 10);
gridBagConstraints_9.fill = GridBagConstraints.HORIZONTAL;
gridBagConstraints_9.gridwidth = 2;
gridBagConstraints_9.gridy = 3;
gridBagConstraints_9.gridx = 6;
getContentPane().add(jieShuanFangShi, gridBagConstraints_9);
jieShuanFangShi.setFont(new Font("", Font.PLAIN, 14));
jieShuanFangShi.setModel(new DefaultComboBoxModel(new String[] {"现金", "支票"}));
final JLabel label_4 = new JLabel();
label_4.setFont(new Font("", Font.PLAIN, 14));
label_4.setText("应 付:");
final GridBagConstraints gridBagConstraints_10 = new GridBagConstraints();
gridBagConstraints_10.gridy = 5;
gridBagConstraints_10.gridx = 0;
getContentPane().add(label_4, gridBagConstraints_10);
yingFu = new JTextField();
yingFu.setDragEnabled(true);
yingFu.setEditable(false);
yingFu.setFont(new Font("", Font.PLAIN, 14));
final GridBagConstraints gridBagConstraints_11 = new GridBagConstraints();
gridBagConstraints_11.weightx = 1.0;
gridBagConstraints_11.insets = new Insets(5, 0, 0, 10);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -