package org.infosec.ismp.applet.manager.component.panel.info.waitqueue; import java.awt.GridLayout; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.SwingConstants; import org.infosec.ismp.applet.manager.component.panel.component.InfoComponent; import org.infosec.ismp.applet.manager.component.panel.component.TitlePanel; import org.infosec.ismp.applet.manager.component.panel.info.AbstractTitlePanel; import org.infosec.ismp.applet.manager.component.panel.utils.SJTUUtils; import twaver.swing.TableLayout; /** * 等待处理队列 * 接口 * 进程数: getProcessCount & setProcessCount * 僵死进程数: getDeadProcessCount & setDeadProcessCount */ public class WaitQueuePanel extends AbstractTitlePanel { private InfoComponent processLabel = new InfoComponent(); private InfoComponent deadProcessLabel = new InfoComponent(); public WaitQueuePanel() { JPanel queuePanel = new JPanel(new GridLayout(2, 1, 2, 20)); double rows[] = { TableLayout.PREFERRED, TableLayout.PREFERRED }; double cols[] = { TableLayout.PREFERRED }; TableLayout layout = new TableLayout(cols, rows); JPanel processPanel = new JPanel(layout); JLabel label = SJTUUtils.getLabel("进程数", false); label.setHorizontalAlignment(SwingConstants.CENTER); label.setVerticalAlignment(SwingConstants.CENTER); processPanel.add(label, "0,0,0,0"); processPanel.add(processLabel, "0,1,0,1"); queuePanel.add(processPanel); JPanel deadProcessPanel = new JPanel(layout); label = SJTUUtils.getLabel("僵死进程数", false); label.setHorizontalAlignment(SwingConstants.CENTER); label.setVerticalAlignment(SwingConstants.CENTER); deadProcessPanel.add(label, "0,0,0,0"); deadProcessPanel.add(deadProcessLabel, "0,1,0,1"); queuePanel.add(deadProcessPanel); this.add(queuePanel); } public JPanel getTitlePanel() { return new TitlePanel("等待处理队列", this); } /** * 获取进程数 * @return */ public int getProcessCount() { return Integer.parseInt(processLabel.getText()); } /** * 设置进程数 * @param processCount */ public void setProcessCount(int processCount) { this.processLabel.setText(processCount + ""); } /** * 获取僵死进程数 * @return */ public int getDeadProcessCount() { return Integer.parseInt(deadProcessLabel.getText()); } /** * 设置僵死进程数 * @param deadProcessCount */ public void setDeadProcessCount(int deadProcessCount) { this.deadProcessLabel.setText(deadProcessCount + ""); } }