Java 将KeyListener添加到JInternalFrame
实际上,在我第一次按下Alt键后,我的registerKeyBoardAction(带有以下代码)不起作用。如果我再次按下Alt键,则表示Alt键处于锁定和解锁状态,即在锁定状态下键盘操作不起作用,而在解锁状态下键盘操作起作用:Java 将KeyListener添加到JInternalFrame,java,swing,Java,Swing,实际上,在我第一次按下Alt键后,我的registerKeyBoardAction(带有以下代码)不起作用。如果我再次按下Alt键,则表示Alt键处于锁定和解锁状态,即在锁定状态下键盘操作不起作用,而在解锁状态下键盘操作起作用: package com.remittance; import Util.DayBookDetails; import Util.MultiLineTableCellRenderer; import Util.ReportPrint; import UtilClass.
package com.remittance;
import Util.DayBookDetails;
import Util.MultiLineTableCellRenderer;
import Util.ReportPrint;
import UtilClass.DayBookDataList;
import com.fa.converter.DateUtil;
import java.awt.Container;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.image.BufferedImage;
import java.awt.print.PrinterException;
import java.io.File;
import java.math.BigDecimal;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.DateFormat;
import java.text.MessageFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.imageio.ImageIO;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.ImageIcon;
import javax.swing.JComponent;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.KeyStroke;
import javax.swing.border.Border;
import javax.swing.border.CompoundBorder;
import javax.swing.border.EmptyBorder;
import javax.swing.plaf.basic.BasicInternalFrameUI;
import javax.swing.table.DefaultTableModel;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import net.sf.jasperreports.view.JasperViewer;
/**
*
* @author Ashmin
*/
public class DayBook extends javax.swing.JInternalFrame {
/**
* Creates new form DayBook
*/
private Session session;
private Connection connect;
private ResultSet result;
private PreparedStatement statement;
static org.apache.log4j.Logger log = org.apache.log4j.Logger.getLogger(DayBook.class.getName());
private String className = "com.remittance.DayBook";
private ActionListener showForm;
private final MultiLineTableCellRenderer renderer;
public DayBook(Session session) {
initComponents();
Action actionView = new AbstractAction("View") {
@Override
public void actionPerformed(ActionEvent evt) {
}
};
buttonView.setAction(actionView);
actionView.putValue(Action.MNEMONIC_KEY, KeyEvent.VK_V);
buttonView.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(
KeyStroke.getKeyStroke(KeyEvent.VK_V, KeyEvent.CTRL_DOWN_MASK), buttonView);
buttonView.getActionMap().put(buttonView, actionView);
this.panel.setVisible(false);
showForm = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if (panel.isVisible()) {
panel.setVisible(false);
} else {
panel.setVisible(true);
}
}
};
this.getRootPane().registerKeyboardAction(showForm, KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0), JComponent.WHEN_IN_FOCUSED_WINDOW);
this.getRootPane().registerKeyboardAction(showForm, KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0), JComponent.WHEN_FOCUSED);
ActionListener actionRefresh = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("Refreshed");
showDayBook();
}
};
buttonRefresh.getRootPane().registerKeyboardAction(actionRefresh, KeyStroke.getKeyStroke(KeyEvent.VK_F5, 0), JComponent.WHEN_IN_FOCUSED_WINDOW);
buttonRefresh.getRootPane().registerKeyboardAction(actionRefresh, KeyStroke.getKeyStroke(KeyEvent.VK_F5, 0), JComponent.WHEN_FOCUSED);
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
tableDayBook = new javax.swing.JTable();
labelDateAd = new javax.swing.JLabel();
panel = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
inputTextFieldDateBsFrom = new javax.swing.JTextField();
inputTextFieldDateBsTo = new javax.swing.JTextField();
checkBoxRemark = new javax.swing.JCheckBox();
buttonView = new javax.swing.JButton();
jPanel1 = new javax.swing.JPanel();
jScrollPane4 = new javax.swing.JScrollPane();
tableShortcut = new javax.swing.JTable();
buttonRefresh = new javax.swing.JButton();
panelTitle = new javax.swing.JPanel();
jLabel5 = new javax.swing.JLabel();
labelPan = new javax.swing.JLabel();
labelLogo = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
labelContact = new javax.swing.JLabel();
labelCompanyName = new javax.swing.JLabel();
labelLocation = new javax.swing.JLabel();
labelDayBook = new javax.swing.JLabel();
labelDate = new javax.swing.JLabel();
jButton1 = new javax.swing.JButton();
setClosable(true);
setIconifiable(true);
setMaximizable(true);
setTitle("Day Book");
setPreferredSize(new java.awt.Dimension(1180, 560));
tableDayBook.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"Date", "Particular", "Vouchar Type", "VNo", "Dr. Amount", "Cr. Amount"
}
) {
boolean[] canEdit = new boolean [] {
false, false, false, false, false, false
};
public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
});
tableDayBook.getTableHeader().setReorderingAllowed(false);
tableDayBook.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
tableDayBookKeyPressed(evt);
}
});
jScrollPane1.setViewportView(tableDayBook);
if (tableDayBook.getColumnModel().getColumnCount() > 0) {
tableDayBook.getColumnModel().getColumn(0).setResizable(false);
tableDayBook.getColumnModel().getColumn(1).setResizable(false);
tableDayBook.getColumnModel().getColumn(2).setResizable(false);
tableDayBook.getColumnModel().getColumn(3).setResizable(false);
tableDayBook.getColumnModel().getColumn(4).setResizable(false);
tableDayBook.getColumnModel().getColumn(5).setResizable(false);
}
labelDateAd.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
labelDateAd.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
jLabel1.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
jLabel1.setForeground(new java.awt.Color(255, 0, 0));
jLabel1.setText("*");
jLabel2.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
jLabel2.setText("Date (YYYY-MM-DD) In BS: From:");
jLabel3.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
jLabel3.setText("To:");
inputTextFieldDateBsFrom.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusLost(java.awt.event.FocusEvent evt) {
inputTextFieldDateBsFromFocusLost(evt);
}
});
inputTextFieldDateBsFrom.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
inputTextFieldDateBsFromKeyPressed(evt);
}
});
inputTextFieldDateBsTo.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusLost(java.awt.event.FocusEvent evt) {
inputTextFieldDateBsToFocusLost(evt);
}
});
inputTextFieldDateBsTo.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
inputTextFieldDateBsToKeyPressed(evt);
}
});
checkBoxRemark.setText("Remark");
checkBoxRemark.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
checkBoxRemarkKeyPressed(evt);
}
});
buttonView.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
buttonView.setText("View");
buttonView.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusGained(java.awt.event.FocusEvent evt) {
buttonViewFocusGained(evt);
}
});
buttonView.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
buttonViewActionPerformed(evt);
}
});
buttonView.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
buttonViewKeyPressed(evt);
}
});
javax.swing.GroupLayout panelLayout = new javax.swing.GroupLayout(panel);
panel.setLayout(panelLayout);
panelLayout.setHorizontalGroup(
panelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelLayout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jLabel2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(inputTextFieldDateBsFrom, javax.swing.GroupLayout.PREFERRED_SIZE, 175, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(29, 29, 29)
.addComponent(jLabel3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(inputTextFieldDateBsTo, javax.swing.GroupLayout.PREFERRED_SIZE, 212, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(checkBoxRemark)
.addGap(33, 33, 33)
.addComponent(buttonView)
.addContainerGap(330, Short.MAX_VALUE))
);
panelLayout.setVerticalGroup(
panelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelLayout.createSequentialGroup()
.addGap(3, 3, 3)
.addGroup(panelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(jLabel2)
.addComponent(jLabel3)
.addComponent(inputTextFieldDateBsFrom, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(inputTextFieldDateBsTo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(checkBoxRemark)
.addComponent(buttonView))
.addGap(0, 2, Short.MAX_VALUE))
);
tableShortcut.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"Shortcut Keys"
}
) {
Class[] types = new Class [] {
java.lang.String.class
};
boolean[] canEdit = new boolean [] {
false
};
public Class getColumnClass(int columnIndex) {
return types [columnIndex];
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
});
jScrollPane4.setViewportView(tableShortcut);
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane4)
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jScrollPane4, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 15, Short.MAX_VALUE))
);
buttonRefresh.setText("Refresh");
buttonRefresh.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
buttonRefreshActionPerformed(evt);
}
});
buttonRefresh.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
buttonRefreshKeyPressed(evt);
}
});
jLabel5.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
jLabel5.setText("Pan No:");
labelPan.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
labelPan.setText("Pan");
labelLogo.setBackground(new java.awt.Color(0, 0, 0));
labelLogo.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel4.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
jLabel4.setText("Contact:");
labelContact.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
labelContact.setText("PHone");
labelCompanyName.setFont(new java.awt.Font("Tahoma", 1, 18)); // NOI18N
labelCompanyName.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
labelCompanyName.setText("Company Name");
labelLocation.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
labelLocation.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
labelLocation.setText("Location");
labelDayBook.setFont(new java.awt.Font("Tahoma", 1, 14)); // NOI18N
labelDayBook.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
labelDayBook.setText("Day Book");
labelDate.setFont(new java.awt.Font("Tahoma", 0, 14)); // NOI18N
labelDate.setText("Date in AD: ");
javax.swing.GroupLayout panelTitleLayout = new javax.swing.GroupLayout(panelTitle);
panelTitle.setLayout(panelTitleLayout);
panelTitleLayout.setHorizontalGroup(
panelTitleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelTitleLayout.createSequentialGroup()
.addGap(0, 0, 0)
.addGroup(panelTitleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(panelTitleLayout.createSequentialGroup()
.addComponent(jLabel5)
.addGap(22, 22, 22)
.addComponent(labelPan))
.addComponent(labelLogo, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(panelTitleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelTitleLayout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(panelTitleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(labelCompanyName, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(panelTitleLayout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 55, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 0, 0)
.addComponent(labelContact))
.addComponent(labelLocation, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(labelDayBook, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelTitleLayout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(labelDate)
.addGap(19, 19, 19))))
);
panelTitleLayout.setVerticalGroup(
panelTitleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelTitleLayout.createSequentialGroup()
.addGroup(panelTitleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel5)
.addComponent(labelPan)
.addComponent(jLabel4)
.addComponent(labelContact))
.addGap(30, 30, 30)
.addGroup(panelTitleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(panelTitleLayout.createSequentialGroup()
.addComponent(labelCompanyName)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(labelLocation)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(labelDayBook)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(labelDate))
.addComponent(labelLogo, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(0, 0, Short.MAX_VALUE))
);
jButton1.setText("Print");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(panel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(panelTitle, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(buttonRefresh)))
.addGap(0, 0, 0)
.addComponent(labelDateAd))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(panel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(123, 123, 123)
.addComponent(labelDateAd))
.addComponent(panelTitle, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(0, 0, 0)
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 312, Short.MAX_VALUE)
.addGap(0, 0, 0)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(buttonRefresh)
.addComponent(jButton1))))
);
pack();
}// </editor-fold>
private void buttonViewActionPerformed(java.awt.event.ActionEvent evt) {
panel.setVisible(false);
}
private void inputTextFieldDateBsFromKeyPressed(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode() == KeyEvent.VK_ENTER) {
inputTextFieldDateBsTo.requestFocus();
}
}
private void inputTextFieldDateBsToKeyPressed(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode() == KeyEvent.VK_ENTER) {
buttonView.requestFocus();
}
}
private void checkBoxRemarkKeyPressed(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode() == KeyEvent.VK_ENTER) {
checkBoxRemark.setSelected(true);
}
}
private void tableDayBookKeyPressed(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode() == KeyEvent.VK_F2) {
//panel.setVisible(true);
showForm.actionPerformed(new ActionEvent(this, ActionEvent.ACTION_PERFORMED, null) {
//Nothing need go here, the actionPerformed method (with the
//above arguments) will trigger the respective listener
});
}
if (evt.getKeyCode() == KeyEvent.VK_ALT) {
evt.consume();
}
}
// Variables declaration - do not modify
private javax.swing.JButton buttonRefresh;
private javax.swing.JButton buttonView;
private javax.swing.JCheckBox checkBoxRemark;
private javax.swing.JTextField inputTextFieldDateBsFrom;
private javax.swing.JTextField inputTextFieldDateBsTo;
private javax.swing.JButton jButton1;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JPanel jPanel1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane4;
private javax.swing.JLabel labelCompanyName;
private javax.swing.JLabel labelContact;
private javax.swing.JLabel labelDate;
private javax.swing.JLabel labelDateAd;
private javax.swing.JLabel labelDayBook;
private javax.swing.JLabel labelLocation;
private javax.swing.JLabel labelLogo;
private javax.swing.JLabel labelPan;
private javax.swing.JPanel panel;
private javax.swing.JPanel panelTitle;
private javax.swing.JTable tableDayBook;
private javax.swing.JTable tableShortcut;
// End of variables declaration
package.com;
导入Util.DayBookDetails;
导入Util.multiletableCellRenderer;
导入Util.ReportPrint;
导入UtilClass.DayBookDataList;
导入com.fa.converter.DateUtil;
导入java.awt.Container;
导入java.awt.Image;
导入java.awt.event.ActionEvent;
导入java.awt.event.ActionListener;
导入java.awt.event.KeyEvent;
导入java.awt.image.buffereImage;
导入java.awt.print.PrinterException;
导入java.io.File;
导入java.math.BigDecimal;
导入java.sql.Connection;
导入java.sql.PreparedStatement;
导入java.sql.ResultSet;
导入java.sql.SQLException;
导入java.sql.Statement;
导入java.text.DateFormat;
导入java.text.MessageFormat;
导入java.text.simpleDataFormat;
导入java.util.ArrayList;
导入java.util.Collections;
导入java.util.Date;
导入java.util.HashMap;
导入java.util.List;
导入java.util.Map;
导入javax.imageio.imageio;
导入javax.swing.AbstractAction;
导入javax.swing.Action;
导入javax.swing.ImageIcon;
导入javax.swing.JComponent;
导入javax.swing.JOptionPane;
导入javax.swing.JTable;
导入javax.swing.KeyStroke;
导入javax.swing.border.border;
导入javax.swing.border.CompoundBorder;
导入javax.swing.border.EmptyBorder;
导入javax.swing.plaf.basic.BasicInternalFrameUI;
导入javax.swing.table.DefaultTableModel;
导入net.sf.jasperreports.engine.JRException;
导入net.sf.jasperreports.engine.JasperCompileManager;
导入net.sf.jasperreports.engine.JasperFillManager;
导入net.sf.jasperreports.engine.JasperPrint;
导入net.sf.jasperreports.engine.JasperReport;
导入net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
导入net.sf.jasperreports.view.JasperViewer;
/**
*
*@作者阿什敏
*/
公共类DayBook扩展了javax.swing.JInternalFrame{
/**
*创建新表单日记帐
*/
非公开会议;
专用连接;
私有结果集结果;
私人编制的报表;
静态org.apache.log4j.Logger log=org.apache.log4j.Logger.getLogger(DayBook.class.getName());
私有字符串className=“com.submission.DayBook”;
私人行动监听节目表;
私有最终多语言渲染器;
公共日记帐(会议){
初始化组件();
Action actionView=新抽象动作(“视图”){
@凌驾
已执行的公共无效操作(操作事件evt){
}
};
buttonView.setAction(actionView);
actionView.putValue(Action.助记符键,KeyEvent.VK_V);
buttonView.getInputMap(JComponent.WHEN_IN_FOCUSED_窗口)。放置(
KeyStroke.getKeyStroke(KeyEvent.VK\u V,KeyEvent.CTRL\u DOWN\u MASK),buttonView);
buttonView.getActionMap().put(buttonView,actionView);
此.panel.setVisible(假);
showForm=newActionListener(){
@凌驾
已执行的公共无效操作(操作事件e){
if(panel.isVisible()){
面板设置可见(假);
}否则{
面板设置可见(真);
}
}
};
this.getRootPane().registerKeyboardAction(showForm,KeyStroke.getKeyStroke(KeyEvent.VK_F2,0),JComponent.WHEN_在聚焦窗口中);
this.getRootPane().registerKeyboardAction(showForm,KeyStroke.getKeyStroke(KeyEvent.VK_F2,0),JComponent.WHEN_FOCUSED);
ActionListener actionRefresh=新建ActionListener(){
@凌驾
已执行的公共无效操作(操作事件e){
System.out.println(“刷新”);
showDayBook();
}
};
buttonRefresh.getRootPane().registerKeyboardAction(actionRefresh,KeyStroke.getKeyStroke(KeyEvent.VK\u F5,0),JComponent.WHEN\u在聚焦窗口中);
buttonRefresh.getRootPane().registerKeyboardAction(actionRefresh,KeyStroke.getKeyStroke(KeyEvent.VK_F5,0),JComponent.WHEN_聚焦);
}
/**
*从构造函数中调用此方法来初始化表单。
*警告:不要修改此代码。此方法的内容始终为
*由表单编辑器重新生成。
*/
@抑制警告(“未选中”)
//
私有组件(){
jScrollPane1=newjavax.swing.JScrollPane();
tableDayBook=newjavax.swing.JTable();
labelDateAd=newjavax.swing.JLabel();
panel=newjavax.swing.JPanel();
jLabel1=newjavax.swing.JLabel();
jLabel2=newjavax.swing.JLabel();
jLabel3=newjavax.swing.JLabel();
InputExtFieldDateBSFrom=new javax.swing.JTextField();
inputTextFieldDateBsTo=newjavax.swing.JTextField();
checkboxmark=newjavax.swing.JCheckBox();
buttonView=newjavax.swing.JButton();
jPanel1=newjavax.swing.JPanel();
jScrollPane4=newjavax.swing.JScrollPane();
tableShortcut=newjavax.swing.JTable();
buttonRefresh=newjavax.swing.JButton();
panelTitle=newjavax.swing.JPanel();
jLabel5=newjavax.swing.JLabel();
labelPan=newjavax.swing.JLabel();
labelLogo=newjavax.swing.JLabel();
jLabel4=newjavax.swing.JLabel();
labelContact=newjavax.swing.JLabel();
labelCompanyName=newjavax.swing.JLabel();
labelLocation=newjavax.swing.JLabel();
labelDayBook=newjavax.swing.JLabel();
labelDate=newjavax.swing.JLabel();
jButton1=newjavax.swing.JButton();
可设置(真);
seticonitable(真);
可设置最大化(真);
设定标题(“日记帐”);
setPreferredSize(新java.awt.Dimension(1180560));
setModel(新的javax.swing.table.DefaultTableModel(
新对象[][]{
},
新字符串[]{
“日期”、“特定”、“凭证类型”、“VNo”、“Dr.金额”、“Cr.金额”
}
) {
boolean[]canEdit=新的boolean[]{
fal