📄 optionalinfopanel1.java
字号:
//邮政编码文本框 postalcodeTextField = new JTextField(); constraints.gridx = 1; constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.weightx = 1.0; constraints.fill = GridBagConstraints.HORIZONTAL; constraints.insets = new Insets(5, 0, 0, 10); add(postalcodeTextField, constraints); //个人主页标签 constraints.gridx = 0; constraints.gridy = 6; constraints.gridwidth = 1; constraints.weightx = 0.0; constraints.fill = GridBagConstraints.NONE; constraints.insets = new Insets(5, 10, 0, 0); add(new JLabel("个人主页:"), constraints); //个人主页文本框 homepageTextField = new JTextField(); constraints.gridx = 1; constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.weightx = 1.0; constraints.fill = GridBagConstraints.HORIZONTAL; constraints.insets = new Insets(5, 0, 0, 10); add(homepageTextField, constraints); //备注标签 constraints.gridx = 0; constraints.gridy = 7; 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); //备注文本域 remarkTextArea = new JTextArea(); JScrollPane scroller = new JScrollPane(remarkTextArea, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); constraints.gridx = 1; constraints.gridwidth = GridBagConstraints.REMAINDER; constraints.weightx = 1.0; constraints.fill = GridBagConstraints.BOTH; constraints.insets = new Insets(5, 0, 5, 10); add(scroller, constraints); } /*------------------------------------------------------------------------* * 公共方法 * *------------------------------------------------------------------------*/ /** * 返回姓名 * * @return 姓名 */ public String getName() { return nameTextField.getText().trim(); } /** * 返回性别 * * @return 性别 */ public String getGender() { return genderComboBox.getSelectedItem().toString(); } /** * 返回生日 * * @return 生日 */ public String getBirthday() { int year = Integer.parseInt(yearSpinner.getValue().toString()); int month = Integer.parseInt(monthSpinner.getValue().toString()); int day = Integer.parseInt(daySpinner.getValue().toString()); StringBuffer buffer = new StringBuffer(); buffer.append(year); buffer.append("年"); buffer.append(month); buffer.append("月"); buffer.append(day); buffer.append("日"); return buffer.toString(); } /** * 返回国家 * * @return 国家 */ public String getCountry() { return countryComboBox.getSelectedItem().toString(); } /** * 返回省份 * * @return 省份 */ public String getProvince() { return provinceComboBox.getSelectedItem().toString(); } /** * 返回城市 * * @return 城市 */ public String getCity() { return cityTextField.getText().trim(); } /** * 返回联系电话 * * @return 联系电话 */ public String getTelephone() { return telephoneTextField.getText().trim(); } /** * 返回电子邮件 * * @return 电子邮件 */ public String getEmail() { return emailTextField.getText().trim(); } /** * 返回家庭住址 * * @return 家庭住址 */ public String getAddress() { return addressTextField.getText().trim(); } /** * 返回邮政编码 * * @return 邮政编码 */ public String getPostalcode() { return postalcodeTextField.getText().trim(); } /** * 返回个人主页 * * @return 个人主页 */ public String getHomepage() { return homepageTextField.getText().trim(); } /** * 返回备注 * * @return 备注 */ public String getRemark() { return remarkTextArea.getText().trim(); } /** * 重置 */ public void reset() { nameTextField.setText(""); genderComboBox.setSelectedIndex(0); yearSpinner.setValue(Integer.valueOf("1980")); monthSpinner.setValue(Integer.valueOf("1")); daySpinner.setValue(monthSpinner.getValue()); countryComboBox.setSelectedIndex(0); provinceComboBox.setSelectedIndex(0); cityTextField.setText(""); telephoneTextField.setText(""); emailTextField.setText(""); addressTextField.setText(""); postalcodeTextField.setText(""); homepageTextField.setText(""); remarkTextArea.setText(""); } /** * 设置可选信息 * * @param info 待设置的可选信息 */ public void setValue(OptionalInfo info) { if (info != null) { nameTextField.setText(info.getName()); genderComboBox.setSelectedItem(info.getGender()); String birthday = info.getBirthday(); int yIndex = birthday.indexOf("年"); String str = birthday.substring(0, yIndex); yearSpinner.setValue(Integer.valueOf(str)); int mIndex = birthday.indexOf("月"); str = birthday.substring(yIndex + 1, mIndex); monthSpinner.setValue(Integer.valueOf(str)); int dIndex = birthday.indexOf("日"); str = birthday.substring(mIndex + 1, dIndex); daySpinner.setValue(Integer.valueOf(str)); countryComboBox.setSelectedItem(info.getCountry()); provinceComboBox.setSelectedItem(info.getProvince()); cityTextField.setText(info.getCity()); telephoneTextField.setText(info.getTelephone()); emailTextField.setText(info.getEmail()); addressTextField.setText(info.getAddress()); postalcodeTextField.setText(info.getPostalcode()); homepageTextField.setText(info.getHomepage()); remarkTextArea.setText(info.getRemark()); } else { nameTextField.setText(""); genderComboBox.setSelectedIndex(0); yearSpinner.setValue(Integer.valueOf("1980")); monthSpinner.setValue(Integer.valueOf("1")); daySpinner.setValue(monthSpinner.getValue()); countryComboBox.setSelectedIndex(0); provinceComboBox.setSelectedIndex(0); cityTextField.setText(""); telephoneTextField.setText(""); emailTextField.setText(""); addressTextField.setText(""); postalcodeTextField.setText(""); homepageTextField.setText(""); remarkTextArea.setText(""); } } /*------------------------------------------------------------------------* * 保护方法 * *------------------------------------------------------------------------*/ /** * 添加DocumentListener * * @param listener 待添加的DocumentListener */ protected void addDocumentListener(DocumentListener listener) { nameTextField.getDocument().addDocumentListener(listener); cityTextField.getDocument().addDocumentListener(listener); telephoneTextField.getDocument().addDocumentListener(listener); emailTextField.getDocument().addDocumentListener(listener); addressTextField.getDocument().addDocumentListener(listener); postalcodeTextField.getDocument().addDocumentListener(listener); homepageTextField.getDocument().addDocumentListener(listener); remarkTextArea.getDocument().addDocumentListener(listener); } /** * 添加ItemListener * * @param listener 待添加的ItemListener */ protected void addItemListener(ItemListener listener) { genderComboBox.addItemListener(listener); countryComboBox.addItemListener(listener); provinceComboBox.addItemListener(listener); } /*------------------------------------------------------------------------* * 实现方法 * *------------------------------------------------------------------------*/ /** * 实现ChangeListener接口的方法 * * @param event ChangeEvent对象 */ public void stateChanged(ChangeEvent event) { Object value = new Integer(1); Object src = event.getSource(); if (src == yearSpinner) { daySpinner.setValue(value); } else if (src == monthSpinner) { int m = Integer.parseInt(monthSpinner.getValue().toString()); if (m == 2) { int y = Integer.parseInt(yearSpinner.getValue().toString()); if (PopToolkit.isLeapYear(y) == false) { model28.setValue(value); daySpinner.setModel(model28); } else { model29.setValue(value); daySpinner.setModel(model29); } } else if (m == 4 || m == 6 || m == 9 || m == 11) { model30.setValue(value); daySpinner.setModel(model30); } else { model31.setValue(value); daySpinner.setModel(model31); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -