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

📄 spsgeneraluserpanel.java

📁 打印管理程序,测试完全通过.windows开发环境.
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package jp.co.ntl.swing.ext.printauth;

import java.awt.CardLayout;
import java.awt.Container;
import java.awt.Dimension;
///import java.awt.Font;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.Graphics;
import java.util.ArrayList;
import java.util.List;
import java.util.Vector;

import javax.swing.JApplet;
import javax.swing.JComponent;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.SpringLayout;
import jp.co.ntl.ActionEventConstants;
import jp.co.ntl.ComResource;
import jp.co.ntl.Net;
import jp.co.ntl.NetworkException;
import jp.co.ntl.ServerException;
import jp.co.ntl.TimeOutException;
import jp.co.ntl.Util;
import jp.co.ntl.preference.PreferenceInfo;
import jp.co.ntl.spkey.SPKeyInfo;
import jp.co.ntl.ext.ButtonSelectionEvent;
import jp.co.ntl.ext.ButtonSelectionListener;
import jp.co.ntl.ext.ButtonStateEvent;
import jp.co.ntl.ext.ButtonStateListener;
import jp.co.ntl.spooler.SpoolerInfo;
import jp.co.ntl.swing.ext.ButtonGroup;
import jp.co.ntl.swing.ext.ImageInfo;
import jp.co.ntl.swing.ext.ImagePanel;
import jp.co.ntl.swing.ext.PrinterButton;
import jp.co.ntl.swing.ext.PrinterButtonUtil;
import jp.co.ntl.swing.ext.SPSTimerPanel;
import jp.co.ntl.swing.ext.SepButton;
import jp.co.ntl.swing.ext.SimpleButton;
import jp.co.ntl.swing.ext.MsgUtil;
import jp.co.ntl.swing.ext.spooler.SpoolerUserPanel;
import jp.co.ntl.swing.ext.terminal.TerminalInfoInvoker;
import jp.co.ntl.terminal.TerminalInfo;
import jp.co.ntl.user.UserInfo2;

public class SPSGeneralUserPanel extends SPSTimerPanel implements ActionListener, ButtonStateListener {
	private static final long serialVersionUID = 1L;
	
	private static final String CARD_WAIT		= "wait";
	private static final String CARD_END		= "end";
	
	private SepButton			btnWait;
	private SepButton			btnEnd;
	private JPanel				pnlCard;
	// 2007.10.22 lium 暋悢僾儕儞僞懳墳 add start
	private JPanel				pnlHead;
	private PrinterButtonUtil	prtBtnUtil;
	private String				targetPrinterName;
	// 2007.10.22 lium 暋悢僾儕儞僞懳墳 add end
		
	private SpoolerUserPanel	waitQuePanel;
	private SpoolerUserPanel	endQuePanel;
	private Object				keyInfo;
	
	private SimpleButton		btnPrint;
	// 2007.10.19 lium 堦妵報嶞儃僞儞捛壛 add start
	private SimpleButton		btnPrintAll;
	// 2007.10.19 lium 堦妵報嶞儃僞儞捛壛 add end
///	private SimpleButton		btnCancel;	// Cancel儃僞儞偼嶍彍 2007/06/27
	private SimpleButton		btnDelete;
	private SimpleButton		btnDetail;
	private SimpleButton		btnRefresh;
	private SimpleButton		btnLogout = null;
	private boolean[]			bInit;
	
	private List				lstBtnSelectionListener;
	
	public SPSGeneralUserPanel(Container frame, Net net, ImagePanel pnlBackground) {
		this.parent = (JFrame)frame;
		commonConstractor(net, USER_PANEL, pnlBackground);
	}
		
	public SPSGeneralUserPanel(JApplet app, Net net, ImagePanel pnlBackground) {
		this.app = app;
		commonConstractor(net, USER_PANEL, pnlBackground);
	}
	
	private void commonConstractor(Net net, int kind, ImagePanel pnlBackground) {
		super.commonConstractor(net, kind);		
		lstBtnSelectionListener = new ArrayList();
		bInit = new boolean[] {
			true,
			true
		};
		
		buildComponents();		
	}
		
	protected void buildComponents() {
		setLayout(null);
		setOpaque(false);
		
		int w = PrintAuthToolPanel.WIDTH;
//		System.out.println("x=" + this.getY());
		// 2007.10.22 lium 暋悢僾儕儞僞懳墳 add start
		// 儃僞儞Panel捛壛
		pnlHead = new JPanel();
		pnlHead.setLayout(new SpringLayout());
		pnlHead.setBounds(0, 96, PrintAuthToolPanel.WIDTH, PrintAuthToolPanel.HEAD_HEIGHT);
//		pnlHead.setBorder(BorderFactory.createLineBorder(Color.RED));
		pnlHead.setOpaque(false);
		add(pnlHead);
		
		prtBtnUtil = new PrinterButtonUtil();
		prtBtnUtil.initPrinterButtons();
		PrinterButton[] prtBtns = (PrinterButton[])(prtBtnUtil.getPrinterButtons().toArray(new PrinterButton[0]));
		for (int i = 0; i <prtBtns.length; i ++) {
			((PrinterButton)prtBtns[i]).addActionListener(this);
			pnlHead.add(prtBtns[i]);
		}
		prtBtnUtil.initButtonPos(pnlHead);
		targetPrinterName = "";
		
		// 2007.10.22 lium 暋悢僾儕儞僞懳墳 add end
		
		//job index
		JPanel pnlMain = new JPanel();
		pnlMain.setLayout(null);
		Image imgWaitPanel = ImageInfo.getImage(ImageInfo.JOB_WAIT_PANEL);
		Image imgWaitBtn1 = ImageInfo.getImage(ImageInfo.JOB_WAIT_BTN_1);
		// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod start
//		pnlMain.setBounds(0, 0, imgWaitPanel.getWidth(this), imgWaitPanel.getHeight(this) + imgWaitBtn1.getHeight(this));
		pnlMain.setBounds(0, PrintAuthToolPanel.BODY_HEIGHT + 0, imgWaitPanel.getWidth(this), imgWaitPanel.getHeight(this) + imgWaitBtn1.getHeight(this));
		// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod end
		add(pnlMain);
		
		ButtonGroup bg = new ButtonGroup();
		Dimension btnWD = ImageInfo.getDimension(ImageInfo.JOB_WAIT_BTN_1);
		int wwidth = (int)btnWD.getWidth();
		int wheight = (int)btnWD.getHeight();
		
		btnWait = new SepButton(ImageInfo.getImage(ImageInfo.JOB_WAIT_BTN_2), imgWaitBtn1, 
			wwidth, wheight, bg);
		btnWait.addActionListener(this);
		btnWait.set3DBorder(false);
		btnWait.setMove(false);
		btnWait.setBounds(0, 0, wwidth, wheight);
		btnWait.setPushed(true);
		pnlMain.add(btnWait);
			
		Dimension btnED = ImageInfo.getDimension(ImageInfo.JOB_END_BTN_1);
		int ewidth = (int)btnED.getWidth();
		int eheight = (int)btnED.getHeight();
			
		btnEnd = new SepButton(ImageInfo.getImage(ImageInfo.JOB_END_BTN_2), ImageInfo.getImage(ImageInfo.JOB_END_BTN_1),
		ewidth, eheight, bg);
		btnEnd.addActionListener(this);
		btnEnd.set3DBorder(false);
		btnEnd.setMove(false);
		btnEnd.setBounds(wwidth, 0, ewidth, eheight);
		pnlMain.add(btnEnd);
		
//		int cardW = pnlMain.getWidth();
		int cardW = 750;
		int cardH = pnlMain.getHeight() - wheight;
		pnlCard = new JPanel();
		pnlCard.setLayout(new CardLayout());
		pnlCard.setBounds(0,  wheight, cardW, cardH);
		pnlMain.add(pnlCard);
		
		ImagePanel baseWaitPanel = new ImagePanel(imgWaitPanel);
		baseWaitPanel.setLayout(null);
// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod start
//		waitQuePanel = new SpoolerUserPanel(parent, net, keyInfo, SpoolerInfo.TYPE_WAIT);
		waitQuePanel = new SpoolerUserPanel(app, net, keyInfo, SpoolerInfo.TYPE_WAIT, prtBtnUtil);
// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod end
		
		waitQuePanel.addButtonStateListener(this);
		waitQuePanel.setBounds(10, 10, cardW - 10 * 2, cardH - 10 - 20);
		waitQuePanel.addActionListener(this);
		lstBtnSelectionListener.add(waitQuePanel);
		baseWaitPanel.add(waitQuePanel);
		
		ImagePanel baseEndPanel = new ImagePanel(ImageInfo.getImage(ImageInfo.JOB_END_PANEL));
		baseEndPanel.setLayout(null);
// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod start
//		endQuePanel = new SpoolerUserPanel(parent, net, keyInfo, SpoolerInfo.TYPE_END);
		endQuePanel = new SpoolerUserPanel(app, net, keyInfo, SpoolerInfo.TYPE_END, prtBtnUtil);
// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod end
		
		endQuePanel.addButtonStateListener(this);
		endQuePanel.setBounds(10, 10, cardW - 10 * 2, cardH - 10 - 20);
		endQuePanel.addActionListener(this);
		lstBtnSelectionListener.add(endQuePanel);
		baseEndPanel.add(endQuePanel);
		
		pnlCard.add(baseWaitPanel, CARD_WAIT);
		pnlCard.add(baseEndPanel, CARD_END);
		
		//buttons
		Image[] imgPrint = {
				ImageInfo.getImage(ImageInfo.BTN_PRINT1),
				ImageInfo.getImage(ImageInfo.BTN_PRINT2),
				ImageInfo.getImage(ImageInfo.BTN_PRINT3),
		};
		// 2007.10.19 lium 堦妵報嶞儃僞儞捛壛 add start
		Image[] imgPrintAll = {
				ImageInfo.getImage(ImageInfo.BTN_PRINTALL1),
				ImageInfo.getImage(ImageInfo.BTN_PRINTALL2),
				ImageInfo.getImage(ImageInfo.BTN_PRINTALL3),
		};
		// 2007.10.19 lium 堦妵報嶞儃僞儞捛壛 add end
/*		Image[] imgCancel = {
				ImageInfo.getImage(ImageInfo.BTN_CANCEL1),
				ImageInfo.getImage(ImageInfo.BTN_CANCEL2),
				ImageInfo.getImage(ImageInfo.BTN_CANCEL3),
		};*/
		Image[] imgDelete = {
				ImageInfo.getImage(ImageInfo.BTN_DELETE1),
				ImageInfo.getImage(ImageInfo.BTN_DELETE2),
				ImageInfo.getImage(ImageInfo.BTN_DELETE3),
		};
		Image[] imgDetail = {
				ImageInfo.getImage(ImageInfo.BTN_DETAIL1),
				ImageInfo.getImage(ImageInfo.BTN_DETAIL2),
				ImageInfo.getImage(ImageInfo.BTN_DETAIL3),
		};
		Image[] imgRefresh = {
				ImageInfo.getImage(ImageInfo.BTN_REFRESH1),
				ImageInfo.getImage(ImageInfo.BTN_REFRESH2),
				ImageInfo.getImage(ImageInfo.BTN_REFRESH3),
		};
		Image[] imgLogout = {
				ImageInfo.getImage(ImageInfo.BTN_LOGOUT1),
				ImageInfo.getImage(ImageInfo.BTN_LOGOUT2),
				ImageInfo.getImage(ImageInfo.BTN_LOGOUT3),
		};
		btnPrint = new SimpleButton(imgPrint[0], imgPrint[1], imgPrint[2]);
		// 2007.10.19 lium 堦妵報嶞儃僞儞捛壛 add start
		btnPrintAll = new SimpleButton(imgPrintAll[0], imgPrintAll[1], imgPrintAll[2]);
		// 2007.10.19 lium 堦妵報嶞儃僞儞捛壛 add end
///		btnCancel = new SimpleButton(imgCancel[0], imgCancel[1], imgCancel[2]);
		btnDelete = new SimpleButton(imgDelete[0], imgDelete[1], imgDelete[2]);
		btnDetail = new SimpleButton(imgDetail[0], imgDetail[1], imgDetail[2]);
		btnRefresh = new SimpleButton(imgRefresh[0], imgRefresh[1], imgRefresh[2]);
		
		if (Util.getPreferenceInfo().getAuthType() == PreferenceInfo.AUTH_LOGIN) {
			btnLogout = new SimpleButton(imgLogout[0], imgLogout[1], imgLogout[2]);
		}
		
		JComponent[] btns;
		
		if (Util.getPreferenceInfo().getAuthType() != PreferenceInfo.AUTH_LOGIN) {
		    btns = new JComponent[] {btnPrint, btnPrintAll, btnDelete, btnDetail, btnRefresh};
		} else {
			btns = new JComponent[] {btnPrint, btnPrintAll, btnDelete, btnDetail, btnRefresh, btnLogout};
		}
		int bw = imgPrint[0].getWidth(this), bh = imgPrint[0].getHeight(this);
		for (int i = 0; i < btns.length; i++) {
			((SimpleButton)btns[i]).addActionListener(this);
			if (Util.getPreferenceInfo().getAuthType() == PreferenceInfo.AUTH_LOGIN) {
				if (i == btns.length - 1) {
					// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod start
					btns[i].setBounds(w - bw, pnlMain.getHeight() - bh - 3, bw, bh);
//					btns[i].setBounds(w - bw, pnlMain.getY() +pnlMain.getHeight() - bh - 3, bw, bh);
					// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod end
				} else {
					// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod start
//					btns[i].setBounds(w - bw, i * bh + 6, bw, bh);
					btns[i].setBounds(w - bw, pnlMain.getY() + i * bh + 6, bw, bh);
					// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod end
				}
			} else {
				// 2007.10.22 lium 暋悢僾儕儞僞懳墳 mod start

⌨️ 快捷键说明

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