📄 mgmtsimulator.java
字号:
}
}
}
{
readPointOperStatusPanel = new JPanel();
BorderLayout readPointOperStatusPanelLayout = new BorderLayout();
readPointOperStatusPanel.setLayout(readPointOperStatusPanelLayout);
readPointActionPanel.add(readPointOperStatusPanel);
readPointOperStatusPanel.setBorder(BorderFactory.createEtchedBorder(BevelBorder.LOWERED));
readPointOperStatusPanel.setPreferredSize(new java.awt.Dimension(216, 168));
{
readPointOperStatusLabelPanel = new JPanel();
FlowLayout readPointOperStatusLabelPanelLayout = new FlowLayout();
readPointOperStatusLabelPanelLayout.setAlignment(FlowLayout.LEFT);
readPointOperStatusPanel.add(readPointOperStatusLabelPanel, BorderLayout.NORTH);
readPointOperStatusLabelPanel.setLayout(readPointOperStatusLabelPanelLayout);
{
readPointOperStatusLabel = new JLabel();
readPointOperStatusLabelPanel.add(readPointOperStatusLabel);
readPointOperStatusLabel
.setText("Choose an operational status:");
}
}
{
readPointRadioButtonPanel = new JPanel();
BoxLayout readPointRadioButtonPanelLayout = new BoxLayout(
readPointRadioButtonPanel,
javax.swing.BoxLayout.Y_AXIS);
readPointRadioButtonPanel.setLayout(readPointRadioButtonPanelLayout);
readPointOperStatusPanel.add(readPointRadioButtonPanel, BorderLayout.CENTER);
readPointRadioButtonPanel.setPreferredSize(new java.awt.Dimension(212, 85));
{
readPointUpRadioButton = new JRadioButton();
readPointRadioButtonPanel.add(readPointUpRadioButton);
readPointUpRadioButton.setText("UP");
}
{
readPointDownRadioButton = new JRadioButton();
readPointRadioButtonPanel.add(readPointDownRadioButton);
readPointDownRadioButton.setText("DOWN");
}
{
readPointOtherRadioButton = new JRadioButton();
readPointRadioButtonPanel.add(readPointOtherRadioButton);
readPointOtherRadioButton.setText("OTHER");
}
{
readPointUnknownRadioButton = new JRadioButton();
readPointRadioButtonPanel.add(readPointUnknownRadioButton);
readPointUnknownRadioButton
.setText("UNKNOWN");
}
{
readPointRadioButtonGroup = new ButtonGroup();
readPointRadioButtonGroup.add(readPointUpRadioButton);
readPointUpRadioButton
.addItemListener(new ItemListener() {
public void itemStateChanged(
ItemEvent evt) {
readPointRadioButtonItemStateChanged(evt);
}
});
readPointRadioButtonGroup.add(readPointDownRadioButton);
readPointDownRadioButton
.addItemListener(new ItemListener() {
public void itemStateChanged(
ItemEvent evt) {
readPointRadioButtonItemStateChanged(evt);
}
});
readPointRadioButtonGroup.add(readPointOtherRadioButton);
readPointOtherRadioButton
.addItemListener(new ItemListener() {
public void itemStateChanged(
ItemEvent evt) {
readPointRadioButtonItemStateChanged(evt);
}
});
readPointRadioButtonGroup.add(readPointUnknownRadioButton);
readPointUnknownRadioButton
.addItemListener(new ItemListener() {
public void itemStateChanged(
ItemEvent evt) {
readPointRadioButtonItemStateChanged(evt);
}
});
}
}
}
}
}
}
pack();
this.setSize(450, 400);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* Updates the items of the <code>readPointSelector</code> by requesting
* the read points from the reader device.
*/
private void updateReadPointSelector() {
String selectedName = null;
if (readPointSelector.getItemCount() > 0) {
selectedName = ((ReadPointItem) (readPointSelector
.getSelectedItem())).getReadPoint().getName();
}
ReadPoint[] readPoints = readerDevice.getAllReadPoints();
ReadPointItem[] items = new ReadPointItem[readPoints.length];
ReadPointItem selectedItem = null;
for (int i = 0; i < readPoints.length; i++) {
items[i] = new ReadPointItem(readPoints[i]);
if (readPoints[i].getName().equals(selectedName))
selectedItem = items[i];
}
readPointSelector.setModel(new DefaultComboBoxModel(items));
if (selectedItem != null)
readPointSelector.setSelectedItem(selectedItem);
}
/**
* Updates the <code>readPointActionPanel</code> and its content accordingly
* to the selected read point.
*/
private void updateReadPointActionPanel() {
ReadPoint selectedReadPoint = ((ReadPointItem)(readPointSelector.getSelectedItem())).getReadPoint();
if (selectedReadPoint instanceof AntennaReadPoint) {
readErrorButton.setEnabled(true);
writeErrorButton.setEnabled(true);
killErrorButton.setEnabled(true);
eraseErrorButton.setEnabled(true);
lockErrorButton.setEnabled(true);
} else {
readErrorButton.setEnabled(false);
writeErrorButton.setEnabled(false);
killErrorButton.setEnabled(false);
eraseErrorButton.setEnabled(false);
lockErrorButton.setEnabled(false);
}
switch (selectedReadPoint.getOperStatus()) {
case UP:
readPointUpRadioButton.setSelected(true);
break;
case DOWN:
readPointDownRadioButton.setSelected(true);
break;
case OTHER:
readPointOtherRadioButton.setSelected(true);
break;
case UNKNOWN:
readPointUnknownRadioButton.setSelected(true);
break;
}
}
/**
* Called whenever the item states of the read point radio buttons have been
* changed.
*
* @param evt
* The item event
*/
private void readPointRadioButtonItemStateChanged(ItemEvent evt) {
JRadioButton radioButton = (JRadioButton)evt.getSource();
if (evt.getStateChange() == ItemEvent.SELECTED) {
ReadPoint selectedReadPoint = ((ReadPointItem)(readPointSelector.getSelectedItem())).getReadPoint();
if (radioButton == readPointUpRadioButton) {
selectedReadPoint.setOperStatus(OperationalStatus.UP);
} else if (radioButton == readPointDownRadioButton) {
selectedReadPoint.setOperStatus(OperationalStatus.DOWN);
} else if (radioButton == readPointOtherRadioButton) {
selectedReadPoint.setOperStatus(OperationalStatus.OTHER);
} else if (radioButton == readPointUnknownRadioButton) {
selectedReadPoint.setOperStatus(OperationalStatus.UNKNOWN);
}
}
}
/**
* Called whenever the item state of the <code>readPointSelector</code>
* has been changed.
*
* @param evt
* The item event
*/
private void readPointSelectorItemStateChanged(ItemEvent evt) {
updateReadPointActionPanel();
}
/**
* Called on an action event on the <code>readErrorButton</code>.
*
* @param evt
* The action event
*/
private void readErrorButtonActionPerformed(ActionEvent evt) {
updateReadPointSelector();
AntennaReadPoint selectedReadPoint = (AntennaReadPoint) ((ReadPointItem) (readPointSelector
.getSelectedItem())).getReadPoint();
selectedReadPoint.memReadFailureOccurred();
}
/**
* Called on an action event on the <code>writeErrorButton</code>.
*
* @param evt
* The action event
*/
private void writeErrorButtonActionPerformed(ActionEvent evt) {
updateReadPointSelector();
AntennaReadPoint selectedReadPoint = (AntennaReadPoint) ((ReadPointItem) (readPointSelector
.getSelectedItem())).getReadPoint();
selectedReadPoint.writeFailureOccurred();
}
/**
* Called on an action event on the <code>killErrorButton</code>.
*
* @param evt
* The action event
*/
private void killErrorButtonActionPerformed(ActionEvent evt) {
updateReadPointSelector();
AntennaReadPoint selectedReadPoint = (AntennaReadPoint) ((ReadPointItem) (readPointSelector
.getSelectedItem())).getReadPoint();
selectedReadPoint.killFailureOccurred();
}
/**
* Called on an action event on the <code>eraseErrorButton</code>.
*
* @param evt
* The action event
*/
private void eraseErrorButtonActionPerformed(ActionEvent evt) {
updateReadPointSelector();
AntennaReadPoint selectedReadPoint = (AntennaReadPoint) ((ReadPointItem) (readPointSelector
.getSelectedItem())).getReadPoint();
selectedReadPoint.eraseFailureOccurred();
}
/**
* Called on an action event on the <code>lockErrorButton</code>.
*
* @param evt
* The action event
*/
private void lockErrorButtonActionPerformed(ActionEvent evt) {
updateReadPointSelector();
AntennaReadPoint selectedReadPoint = (AntennaReadPoint) ((ReadPointItem) (readPointSelector
.getSelectedItem())).getReadPoint();
selectedReadPoint.lockFailureOccurred();
}
/**
* Called whenever the <code>readPointSelector</code>'s popup menu
* becomes visible.
*
* @param evt
* The popup menu event
*/
private void readPointSelectorPopupMenuWillBecomeVisible(PopupMenuEvent evt) {
updateReadPointSelector();
updateReadPointActionPanel();
}
/**
* This class representates a list item used by the
* <code>readPointSelector</code>.
*/
private class ReadPointItem {
/**
* The read point.
*/
private ReadPoint readPoint;
/**
* The constructor.
*
* @param readPoint
* The read point
*/
public ReadPointItem(ReadPoint readPoint) {
this.readPoint = readPoint;
}
/**
* Returns the read point.
*
* @return The read point
*/
public ReadPoint getReadPoint() {
return readPoint;
}
/* (non-Javadoc)
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
return readPoint.getName() + " ("
+ readPoint.getClass().getSimpleName() + ")";
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -