⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 generaluserpanel.java

📁 打印管理程序,测试完全通过.windows开发环境.
💻 JAVA
字号:
package jp.co.ntl.swing.ext.cppuser;

import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JApplet;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.SpringLayout;

import jp.co.ntl.Net;
import jp.co.ntl.Page;

import jp.co.ntl.NetworkException;
import jp.co.ntl.ServerException;
import jp.co.ntl.NoUSBException;
import jp.co.ntl.TimeOutException;
import jp.co.ntl.cppuser.CPPUserInfo;
import jp.co.ntl.swing.BasePanel;
import jp.co.ntl.swing.SpringUtilities;
import jp.co.ntl.swing.PasswordField;
import jp.co.ntl.swing.ext.DialogManager;
import jp.co.ntl.awt.event.ChangeEvent;
import jp.co.ntl.awt.event.ChangeListener;
import jp.co.ntl.awt.event.ChangeSupport;

public class GeneralUserPanel extends BasePanel implements ActionListener {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private JLabel				lblSPKeySerial;
	private JTextField			txtSPKeySerial;
	private JLabel				lblUserID;
	private JTextField			txtUserID;
	private JLabel				lblPassword;
	private PasswordField		txtPassword;
	private JButton			btnRegister;
	private JButton			btnPrev;

	private CPPUserInfo			userInfo;
	private CPPUserInvoker		invoker;
	private ChangeSupport		changeSupport = new ChangeSupport();

	public GeneralUserPanel(JFrame parent, Net net) {
		super(parent, net);
	}
	
	public GeneralUserPanel(JApplet app, Net net) {
		super(app, net);
	}

	protected void buildComponents() {
		Resource.load(loc);
		
		Dimension	size;
		
	    Page.initialize(net);
	    invoker = CPPUserInvoker.getInstance(net);
	    
	    JPanel	panel = new JPanel(new SpringLayout());
	    
	    lblSPKeySerial = new JLabel(Resource.getString(Resource.USER_PANEL_SP_KEY_SERIAL));
	    panel.add(lblSPKeySerial);
	    
	    txtSPKeySerial = new JTextField();
	    size = new Dimension(100, 24);
	    txtSPKeySerial.setPreferredSize(size);
	    txtSPKeySerial.setMinimumSize(size);
	    txtSPKeySerial.setMaximumSize(size);
	    txtSPKeySerial.setEditable(false);
	    panel.add(txtSPKeySerial);
	    
	    lblUserID = new JLabel(Resource.getString(Resource.USER_PANEL_USER_ID));
	    panel.add(lblUserID);
	    
	    txtUserID = new JTextField();
	    size = new Dimension(200, 24);
	    txtUserID.setPreferredSize(size);
	    txtUserID.setMinimumSize(size);
	    txtUserID.setMaximumSize(size);
	    panel.add(txtUserID);
	    
	    lblPassword = new JLabel(Resource.getString(Resource.USER_PANEL_PASSWORD));
	    panel.add(lblPassword);
	    
	    txtPassword = new PasswordField();
	    size = new Dimension(200, 24);
	    txtPassword.setPreferredSize(size);
	    txtPassword.setMinimumSize(size);
	    txtPassword.setMaximumSize(size);
	    panel.add(txtPassword);

	    SpringUtilities.makeCompactGrid(panel, panel.getComponentCount() / 2, 2, 10, 10, 10, 10);
	    add(panel);

		btnRegister = new JButton(Resource.getString(Resource.REGISTER));
		btnPrev = new JButton(Resource.getString(Resource.PREVIOUS));
		
		addButtonPanel(
				new JButton[] {btnRegister, btnPrev},
				new String[] {null, null});
		
		btnRegister.addActionListener(this);
		btnPrev.addActionListener(this);
	}

	public void beginPanel() {
		getUserInfo();
	}
	
	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 {
		return true;
	}
	
	public int getInfosFromServer() {
		return GET_INFO_RESULT_NORMAL;
	}
	
	private boolean getUserInfo() {
		try {
			userInfo = invoker.getUSBUserInfo();
			
			CPPUserInfo	serverUserInfo = invoker.getUserInfo(userInfo);
			userInfo.setFullname(serverUserInfo.getFullname());
			
			txtSPKeySerial.setText(userInfo.getSPSerial());
			txtUserID.setText(userInfo.getUsername());
			txtPassword.setText(userInfo.getPassword());
		} catch (NetworkException e) {
			DialogManager.showMessage(this, DialogManager.ERROR_NETWORK);
			return false;
		} catch (ServerException e) {
			DialogManager.showMessage(this, DialogManager.ERROR_SERVER, new String[] { e.getMessage() });
			return false;
		} catch (TimeOutException e) {
			DialogManager.showMessage(this, DialogManager.ERROR_TIMEOUT);
			return false;
		} catch (NoUSBException e) {
///			DialogManager.showMessage(this, DialogManager.ERROR_INSERT_USB);
			return false;
		}

		return true;
	}

	private boolean setUserInfo() {
		try {
			userInfo.setUsername(txtUserID.getText());
			userInfo.setSPSerial(txtSPKeySerial.getText());
			userInfo.setPassword(txtPassword.getText());
			
			invoker.setUserInfo(userInfo, false);
			DialogManager.showMessage(this, DialogManager.SET_USER_INFO_SUCCESS);
			changeSupport.fireChangeEvent(new ChangeEvent(this));
		} catch (NetworkException e) {
			DialogManager.showMessage(this, DialogManager.ERROR_NETWORK);
			return false;
		} catch (ServerException e) {
			DialogManager.showMessage(this, DialogManager.ERROR_SERVER, new String[] { e.getMessage() });
			return false;
		} catch (TimeOutException e) {
			DialogManager.showMessage(this, DialogManager.ERROR_TIMEOUT);
			return false;
		} catch (NoUSBException e) {
///			DialogManager.showMessage(this, DialogManager.ERROR_INSERT_USB);
			return false;
		}

		return true;
	}
	
	protected void setPopupMenuState() {
	}
	
    public void addChangeListener(ChangeListener cl) {
    	changeSupport.addChangeListener(cl);
    }
    
    public void removeChangeListener(ChangeListener cl) {
    	changeSupport.removeChangeListener(cl);
    }
	
	public void actionPerformed(ActionEvent ae) {
		Object	obj = ae.getSource();
		
		if (obj == btnRegister) {
			setUserInfo();
		} else if (obj == btnPrev) {
			CPPUserPanel	parent = (CPPUserPanel)getParent();
			if (parent != null) {
				parent.goCheckSPKeyPanel();
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -