📄 testernamepanel.java
字号:
package abchr.gui.modulecontrols;
import abchr.ProjectModule;
import abchr.TesterNameModule;
import guiutils.LineLayout;
import javax.swing.*;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
public class TesterNamePanel extends JPanel implements ModuleControl {
private TesterNameModule module;
private JCheckBox nameCheckBox=new JCheckBox("Show name in results file",false);
private JTextField textField=new JTextField(20);
public TesterNamePanel(TesterNameModule module) {
super(new LineLayout());
//this.add(new JLabel("Your Name: "));
this.add(nameCheckBox);
this.add(textField);
setModule(module);
textField.getDocument().addDocumentListener(new DocumentListener() {
public void changedUpdate(DocumentEvent e){updateModule();}
public void insertUpdate(DocumentEvent e){updateModule();}
public void removeUpdate(DocumentEvent e){updateModule();}
});
nameCheckBox.addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
textField.setEnabled(nameCheckBox.isSelected());
textField.setEditable(nameCheckBox.isSelected());
updateModule();
}
});
}
public TesterNamePanel(){this(null);}
private void updateModule() {
if(module==null){return;}
module.setTesterName(nameCheckBox.isSelected()?textField.getText():"");
}
public void setModule(ProjectModule module) {
nameCheckBox.setEnabled(module!=null);
textField.setEnabled(module!=null && nameCheckBox.isSelected());
textField.setEditable(module!=null && nameCheckBox.isSelected());
this.module=(TesterNameModule)module;
if(module!=null) {
String testerName=this.module.getTesterName();
nameCheckBox.setSelected(!testerName.equals(""));
textField.setText(testerName);
} else {
nameCheckBox.setSelected(false);
textField.setText("");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -