datefield.java

来自「这个项目是为Java平台提供一个灵活的日历组件(Ok)」· Java 代码 · 共 658 行 · 第 1/2 页

JAVA
658
字号
     * 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) {        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);    }    /**     * @return Returns the printMoon.     */    public boolean isPrintMoon() {        return printMoon;    }    /**     * @param printMoon The printMoon to set.     */    public void setPrintMoon(boolean printMoon) {        datepanel.setPrintMoon(printMoon);        repaint();        this.printMoon = printMoon;    }        /**     * Sets the Today button visibility.     * @param show     */    public void setShowToday(boolean show) {        datepanel.setShowToday(show);        repaint();    }        /**     * Returns the Today button visibility.     * @return     */    public boolean getShowToday() {        return datepanel.getShowToday();    }        /**     * Sets the today button text.     * @param caption     */    public void setTodayCaption(String caption) {        datepanel.setTodayCaption(caption);    }        /**     * Returns the today button text.     * @return     */    public String getTodayCaption() {        return datepanel.getTodayCaption();    }    /**     * @return Returns the dateFormat.     */    public DateFormat getDateFormat() {        return dateFormat;    }    /**     * @param dateFormat The dateFormat to set.     */    public void setDateFormat(DateFormat dateFormat) {        this.dateFormat = dateFormat;        field.setFormatterFactory(formatterFactory);    }    /**     * @return Returns the baseDate.     */    public Date getBaseDate() {        return baseDate;    }    /**     * A base date may different from "today" and will be the date     * shown on the Date Window when it is launched.  Basically, a user     * can have an empty textfield but when the window is open, it won't show     * today by default but whatever baseDate is.  It is backward compatible, ie     * if you do not have a baseDate, the window will open with "today".     * @param baseDate The baseDate to set.     */    public void setBaseDate(Date baseDate) {        this.baseDate = baseDate;    }    }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?