📄 viewpanel.java
字号:
level3.setText(optionalInfoPanel.getCountry()); level2.addContent(level3); level3 = new Element("Province"); level3.setText(optionalInfoPanel.getProvince()); level2.addContent(level3); level3 = new Element("City"); level3.setText(optionalInfoPanel.getCity()); level2.addContent(level3); level3 = new Element("Telephone"); level3.setText(optionalInfoPanel.getTelephone()); level2.addContent(level3); level3 = new Element("Email"); level3.setText(optionalInfoPanel.getEmail()); level2.addContent(level3); level3 = new Element("Address"); level3.setText(optionalInfoPanel.getAddress()); level2.addContent(level3); level3 = new Element("Postalcode"); level3.setText(optionalInfoPanel.getPostalcode()); level2.addContent(level3); level3 = new Element("Homepage"); level3.setText(optionalInfoPanel.getHomepage()); level2.addContent(level3); level3 = new Element("Remark"); level3.setText(optionalInfoPanel.getRemark()); level2.addContent(level3); level2 = new Element("Friends"); level1.addContent(level2); List friends = FriendPanel.getInstance().getAllFriends(); for (int i = 0; i < friends.size(); i++) { level3 = new Element("Friend"); level3.setAttribute("id", friends.get(i).toString()); level2.addContent(level3); } return new Document(request); } /** * 激活按钮 */ private void activateActions() { if (getUserID().length() > 0) { ResetInfoAction.getInstance().setEnabled(true); UpdateInfoAction.getInstance().setEnabled(true); } } /*------------------------------------------------------------------------* * 内部类 * *------------------------------------------------------------------------*/ /** * 工具栏面板 */ class Toolbar extends JPanel { /** * Create a new instance of this class */ public Toolbar() { super(new FlowLayout(FlowLayout.CENTER, 5, 0)); //编辑 JButton button = new JButton(UpdateInfoAction.getInstance()); button.setIcon(ImageShop.EDIT_IMAGEICON); button.addMouseListener(new SBChanger( UpdateInfoAction.getInstance().getHintInfo(), false)); add(button); //重置 button = new JButton(ResetInfoAction.getInstance()); button.setIcon(ImageShop.RESET_IMAGEICON); button.addMouseListener(new SBChanger( ResetInfoAction.getInstance().getHintInfo(), false)); add(button); } } /** * 基本信息面板 */ class BasicInfoPanel extends JPanel implements DocumentListener { /** * ID文本框 */ private JTextField idTextField; /** * 昵称文本框 */ private JTextField nicknameTextField; /** * 密码文本框 */ private JPasswordField passwordField; /** * Create a new instance of this class */ public BasicInfoPanel() { super(new GridBagLayout()); //ID标签 GridBagConstraints constraints = new GridBagConstraints( //gridx, gridy 0, 0, //gridwidth, gridheight 1, 1, //weightx, weighty 0.0, 0.0, //anchor GridBagConstraints.NORTHWEST, //fill GridBagConstraints.NONE, //insets new Insets(5, 10, 0, 0), //ipadx, ipady 0, 0); add(new JLabel("ID:"), constraints); //ID文本框 idTextField = new JTextField(); idTextField.setEditable(false); constraints.gridx = 1; constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.weightx = 1.0; constraints.fill = GridBagConstraints.HORIZONTAL; constraints.insets = new Insets(5, 0, 0, 10); add(idTextField, constraints); //昵称标签 constraints.gridx = 0; constraints.gridy = 1; constraints.gridwidth = 1; constraints.weightx = 0.0; constraints.fill = GridBagConstraints.NONE; constraints.insets = new Insets(5, 10, 0, 0); add(new JLabel("昵称:"), constraints); //昵称文本框 nicknameTextField = new JTextField(); nicknameTextField.getDocument().addDocumentListener(this); constraints.gridx = 1; constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.weightx = 1.0; constraints.fill = GridBagConstraints.HORIZONTAL; constraints.insets = new Insets(5, 0, 0, 10); add(nicknameTextField, constraints); //密码标签 constraints.gridx = 0; constraints.gridy = 2; constraints.gridwidth = 1; constraints.weightx = 0.0; constraints.weighty = 1.0; constraints.fill = GridBagConstraints.NONE; constraints.insets = new Insets(5, 10, 0, 0); add(new JLabel("密码:"), constraints); //密码文本框 passwordField = new JPasswordField(); passwordField.getDocument().addDocumentListener(this); constraints.gridx = 1; constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.weightx = 1.0; constraints.fill = GridBagConstraints.HORIZONTAL; constraints.insets = new Insets(5, 0, 5, 10); add(passwordField, constraints); } /** * 返回ID * * @return ID */ public String getID() { return idTextField.getText().trim(); } /** * 返回昵称 * * @return 昵称 */ public String getNickname() { return nicknameTextField.getText().trim(); } /** * 返回密码 * * @return 密码 */ public String getPassword() { char[] chars = passwordField.getPassword(); return String.valueOf(chars, 0, chars.length); } /** * 设置显示用户的基本信息 * * @param info 待设置的基本信息 */ public void setValue(BasicInfo info) { if (info != null) { idTextField.setText(info.getID()); nicknameTextField.setText(info.getNickname()); passwordField.setText(info.getPassword()); } else { idTextField.setText(""); nicknameTextField.setText(""); passwordField.setText(""); } } /** * 实现DocumentListener接口的方法 * * @param event the document event */ public void changedUpdate(DocumentEvent event) { activateActions(); } /** * 实现DocumentListener接口的方法 * * @param event the document event */ public void removeUpdate(DocumentEvent event) { activateActions(); } /** * 实现DocumentListener接口的方法 * * @param event the document event */ public void insertUpdate(DocumentEvent event) { activateActions(); } } /** * 可选信息面板 */ class OptionalInfoPanel2 extends OptionalInfoPanel1 implements DocumentListener, ItemListener { /** * Create a new instance of this class */ public OptionalInfoPanel2() { super(); addItemListener(this); addDocumentListener(this); } /** * 覆盖超类OptionalInfoPanel的方法 * * @param event ChangeEvent对象 */ public void stateChanged(ChangeEvent event) { super.stateChanged(event); activateActions(); } /** * 实现DocumentListener接口的方法 * * @param event the document event */ public void changedUpdate(DocumentEvent event) { activateActions(); } /** * 实现DocumentListener接口的方法 * * @param event the document event */ public void removeUpdate(DocumentEvent event) { activateActions(); } /** * 实现DocumentListener接口的方法 * * @param event the document event */ public void insertUpdate(DocumentEvent event) { activateActions(); } /** * 实现ItemListener接口的方法 * * @param event the item event */ public void itemStateChanged(ItemEvent event) { activateActions(); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -