?? userhistorypanel.java
字號:
package jp.co.ntl.swing.ext.history.userhistory;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.util.Vector;
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JOptionPane;
import javax.swing.ListSelectionModel;
import javax.swing.filechooser.FileFilter;
import jp.co.ntl.Net;
import jp.co.ntl.NetworkException;
import jp.co.ntl.Page;
import jp.co.ntl.ServerException;
import jp.co.ntl.TimeOutException;
import jp.co.ntl.ActionEventConstants;
import jp.co.ntl.swing.BasePanel;
import jp.co.ntl.swing.TableSorter;
import jp.co.ntl.swing.ext.CSVFileFilter;
import jp.co.ntl.swing.ext.DialogManager;
import jp.co.ntl.swing.ext.MsgUtil;
public class UserHistoryPanel extends BasePanel implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
private JTable tblUserHistory;
private UserHistoryTableModel mdlUserHistory;
private JScrollPane scrUserHistory;
private JButton btnDownload;
private JButton btnDelete;
private JButton btnRefresh;
private Vector vcUserHistoryInfo;
private UserHistoryInvoker invoker;
private TableSorter sorter;
public UserHistoryPanel(JFrame parent, Net net) {
super(parent, net);
}
public UserHistoryPanel(JApplet appl, Net net) {
super(appl, net);
}
protected void buildComponents() {
Resource.load(loc);
Page.initialize(net);
invoker = UserHistoryInvoker.getInstance(net);
vcUserHistoryInfo = new Vector();
mdlUserHistory = new UserHistoryTableModel(vcUserHistoryInfo, loc.getLanguage());
sorter = new TableSorter(mdlUserHistory);
tblUserHistory = new JTable(sorter);
sorter.setTableHeader(tblUserHistory.getTableHeader());
scrUserHistory = new JScrollPane(tblUserHistory);
tblUserHistory.getTableHeader().setReorderingAllowed(false);
tblUserHistory.setColumnSelectionAllowed(false);
tblUserHistory.getSelectionModel().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
add(scrUserHistory, BorderLayout.CENTER);
btnDownload = new JButton(Resource.getString(Resource.DOWNLOAD));
btnDelete = new JButton(Resource.getString(Resource.DELETE));
btnRefresh = new JButton(Resource.getString(Resource.REFRESH));
addButtonPanel(
new JButton[] {btnDownload, btnDelete, btnRefresh},
new String[] {
Resource.getString(Resource.TIP_DOWNLOAD),
Resource.getString(Resource.TIP_DELETE),
Resource.getString(Resource.TIP_REFRESH)
});
btnDownload.addActionListener(this);
btnDelete.addActionListener(this);
btnRefresh.addActionListener(this);
}
public void beginPanel() throws NetworkException, ServerException, TimeOutException {
doRefresh();
}
private boolean getUserHistoryInfo() throws NetworkException, ServerException, TimeOutException {
Vector vcUserHistoryInfo = new Vector();
vcUserHistoryInfo = invoker.getUserHistory();
mdlUserHistory.addInfos(vcUserHistoryInfo);
return true;
}
private boolean doDownload() throws NetworkException, ServerException, TimeOutException {
if (!isApplet()) {
CSVFileFilter filter = new CSVFileFilter();
if (DialogManager.showSaveDialog(this, filter) == JFileChooser.APPROVE_OPTION) {
JFileChooser fc = DialogManager.getFileDialogObject();
File selectedFile = fc.getSelectedFile();
File downloadFile = selectedFile;
FileFilter ff = fc.getFileFilter();
if (ff.getClass() == CSVFileFilter.class) {
if (!((CSVFileFilter)ff).accept(selectedFile)) {
downloadFile = new File(selectedFile.getPath() + "." +
((CSVFileFilter)ff).getExtensionString());
}
}
if (!invoker.downloadUserHistory(downloadFile)) {
DialogManager.showMessage(this, DialogManager.ERROR_FAILED_DOWNLOAD);
return false;
} else {
DialogManager.showMessage(this, DialogManager.DOWNLOAD_SUCCESS);
}
}
} else {
}
return true;
}
protected boolean doRegister() throws NetworkException, ServerException, TimeOutException {
return true;
}
protected boolean doModify() throws NetworkException, ServerException, TimeOutException {
return true;
}
protected boolean doDelete() throws NetworkException, ServerException, TimeOutException {
if (DialogManager.showConfirmMessage(
this,
DialogManager.CONFIRM_DELETE,
JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) {
/* int[] selViewRows = tblUserHistory.getSelectedRows();
int i;
Vector vcUserHistoryInfo = new Vector();
for (i = 0; i < selViewRows.length; i++) {
int selRow = sorter.modelIndex(selViewRows[i]);
vcUserHistoryInfo.addElement(mdlUserHistory.getSelectedInfo(selRow));
}*/
if (!invoker.deleteUserHistorys()) {
DialogManager.showMessage(this, DialogManager.ERROR_NETWORK);
return false;
}
mdlUserHistory.deleteAllInfos();
}
return true;
}
protected void setPopupMenuState() {
}
public int getInfosFromServer() {
int result = GET_INFO_RESULT_NORMAL;
mdlUserHistory.deleteAllInfos();
try {
getUserHistoryInfo();
} catch (NetworkException e) {
result = GET_INFO_RESULT_ERROR;
sendActionEvent(MsgUtil.getMessage(MsgUtil.ERROR_NETWORK, null));
} catch (ServerException e) {
result = GET_INFO_RESULT_ERROR;
sendActionEvent(MsgUtil.getMessage(MsgUtil.ERROR_SERVER, null));
} catch (TimeOutException e) {
}
if (result == GET_INFO_RESULT_NORMAL) {
sendActionEvent(MsgUtil.getMessage(MsgUtil.MSG_IDLE, null));
}
return result;
}
public void actionPerformed(ActionEvent ae) {
Object obj = ae.getSource();
try {
if (obj == btnDownload) {
sendActionEvent(ActionEventConstants.ACTCMD_RESET_SESSION_TIMER);
doDownload();
} else if (obj == btnDelete) {
sendActionEvent(ActionEventConstants.ACTCMD_RESET_SESSION_TIMER);
doDelete();
} else if (obj == btnRefresh) {
sendActionEvent(ActionEventConstants.ACTCMD_RESET_SESSION_TIMER);
doRefresh();
}
} catch (NetworkException e) {
DialogManager.showMessage(this, DialogManager.ERROR_NETWORK);
} catch (ServerException e) {
DialogManager.showMessage(this, DialogManager.ERROR_SERVER);
} catch (TimeOutException e) {
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -