📄 datefield.java
字号:
/** * Event fired when a property changes. * @param evt event fired */ public void propertyChange(PropertyChangeEvent evt) { fireChangeListenerStateChanged(new ChangeEvent(this)); } /** * Getter for property renderer. * @return Value of property renderer. */ public DayRenderer getRenderer() { return datepanel.getRenderer(); } /** * Setter for property renderer. * @param renderer New value of property renderer. */ public void setRenderer(DayRenderer renderer) { datepanel.setRenderer(renderer); } /** * Getter for property model. * @return Value of property model. */ public DataModel getModel() { return datepanel.getModel(); } /** * Setter for property model. * @param model New value of property model. */ public void setModel(DataModel model) { datepanel.setModel(model); } /** * Getter for property headerRenderer. * @return Value of property headerRenderer. */ public HeaderRenderer getHeaderRenderer() { return datepanel.getHeaderRenderer(); } /** * Setter for property headerRenderer. * @param headerRenderer New value of property headerRenderer. */ public void setHeaderRenderer(HeaderRenderer headerRenderer) { datepanel.setHeaderRenderer(headerRenderer); } /** * Getter for property showOkCancel. * @return Value of property showOkCancel. * */ public boolean getShowOkCancel() { return this.showOkCancel; } /** * Setter for property showOkCancel. * @param showOkCancel New value of property showOkCancel. * */ public void setShowOkCancel(boolean showOkCancel) { if (this.showOkCancel == showOkCancel) { return; } boolean old = this.showOkCancel; this.showOkCancel = showOkCancel; windowpanel = null; firePropertyChange("showOkCancel", old, showOkCancel); } /** * Getter for property allowsInvalid. * @return Value of property showOkCancel. * */ public boolean getAllowsInvalid() { return formatter.getAllowsInvalid(); } /** * Setter for property allowsInvalid. * @param showOkCancel New value of property showOkCancel. * */ public void setAllowsInvalid(boolean b) { boolean old = formatter.getAllowsInvalid(); formatter.setAllowsInvalid(b); firePropertyChange("allowsInvalid", old, b); } /** * Getter for property firstDayOfWeek. * @return Value of property firstDayOfWeek. */ public int getFirstDayOfWeek() { return this.firstDayOfWeek; } /** * Setter for property firstDayOfWeek. * @param firstDayOfWeek New value of property firstDayOfWeek. */ public void setFirstDayOfWeek(int firstDayOfWeek) { if ((firstDayOfWeek == Calendar.MONDAY) || (firstDayOfWeek == Calendar.SUNDAY)) { int old = this.firstDayOfWeek; if (datepanel != null) datepanel.setFirstDayOfWeek(firstDayOfWeek); this.firstDayOfWeek = firstDayOfWeek; firePropertyChange("firstDayOfWeek", old, firstDayOfWeek); } } /** * Getter for property workingDays. * @return Value of property workingDays. */ public boolean[] getWorkingDays() { return this.workingDays; } /** * Setter for property workingDays. * @param workingDays New value of property workingDays. */ public void setWorkingDays(boolean[] workingDays) { boolean[] old = this.workingDays; if (datepanel != null) datepanel.setWorkingDays(workingDays); this.workingDays = workingDays; firePropertyChange("workingDays", old, workingDays); } /** * Enables or disables the component * @param enabled true for enabling */ public void setEnabled(boolean enabled) { button.setEnabled(enabled); field.setEnabled(enabled); super.setEnabled(enabled); } /** * Getter for enabled property * @return true if it's enabled */ public boolean isEnabled() { return button.isEnabled(); } /** * Returns the JFormattedTextField for further customization * @return the JFormattedTextField */ public JFormattedTextField getFormattedTextField() { return field; } class WindowPanel extends JDialog { public WindowPanel(Frame parent, boolean showWeekNumbers) { super(parent, false); init(showWeekNumbers); } public WindowPanel(Dialog parent, boolean showWeekNumbers) { super(parent, false); init(showWeekNumbers); } private void init(boolean showWeekNumbers) { setUndecorated(true); setFocusable(true); JPanel todo = new JPanel(new BorderLayout()); getContentPane().add(todo); todo.add(datepanel); todo.setBorder(BorderFactory.createLineBorder(Color.black)); if (showOkCancel) { JPanel abajo = new JPanel(); todo.add(abajo, BorderLayout.SOUTH); JButton ok = new JButton("Ok"); JButton cancel = new JButton("Cancel"); abajo.add(ok); abajo.add(cancel); getRootPane().setDefaultButton(ok); ok.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { aceptar(); } }); cancel.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { cancelar(); } }); } else { /*datepanel.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent e) { aceptar(); } });*/ datepanel.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { aceptar(); } }); } KeyListener klistener = new KeyAdapter() { public void keyTyped(KeyEvent e) { if (e.getKeyChar() == 10) { aceptar(); } if (e.getKeyChar() == 27) { cancelar(); } } }; datepanel.addKeyListener(klistener); addKeyListener(klistener); addWindowListener(new WindowAdapter() { public void windowDeactivated(WindowEvent e) { cancelar(); } }); pack(); } public Date getDate() { return datepanel.getDate(); } public void setDate(Date d) { datepanel.setDate(d); } } /** * @return Returns the antiAliased. */ public boolean isAntiAliased() { return antiAliased; } /** * @param antiAliased The antiAliased to set. */ public void setAntiAliased(boolean antiAliased) { boolean old = this.antiAliased; this.antiAliased = antiAliased; datepanel.setAntiAliased(antiAliased); firePropertyChange("antiAliased", old, antiAliased); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -