⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 monthpanel.java

📁 一个demo是关于swing
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
                if (calendar.get(Calendar.MONTH) == showingmonth) {                    daypanels[i].setEnabled(true);                } else daypanels[i].setEnabled(false);            }            if (select) {                //if (compareDates(calendar.getTime(), d)) listSelectionModel.addSelectionInterval(i, i);            }            calendar.add(Calendar.DAY_OF_YEAR, 1);        }                        // actualizo el titulo        if (showtitle) {            title.setText(months[showingmonth] + " " + showingyear);        }                // actualizo semanas        if (showWeekNumber) {            for (int i = 0; i < weeks.length; i++) {                weeks[i].setValue(Integer.toString(week + i));            }        }                repaint();        fireChangeEvent(new ChangeEvent(this));    }        /**     * Refreshes the showing of this component.     */    public void refresh() {        for (int i = 0; i < paneles.length; i++) {            for (int j = 0; j < paneles[i].length; j++) {                if (model != null) {                    paneles[i][j].setData(model.getData(paneles[i][j].getDate()));                }            }        }        repaint();    }        /**     * Returns the currently selected day.     * @return selected Date     */    public Date getDay() {        return date;    }        /**     * Returns a Object collection with the selected dates     * @return selected dates or null     */    public Object[] getDays() {        /*if (listSelectionModel.isSelectionEmpty()) return null;        Collection col = new ArrayList();        for (int i=0; i < daypanels.length; i++) {            if (listSelectionModel.isSelectedIndex(i)) col.add(daypanels[i].getDate());        }        return col.toArray();*/        return null;    }        /**     * Event fired every date selection change.     * @param e event fired     */    protected void fireChangeEvent(ChangeEvent e) {        Iterator it = changelisteners.iterator();        while (it.hasNext()) {            ((ChangeListener) it.next()).stateChanged(e);        }    }        /**     * Getter for property model.     *     * @return Value of property model.     */    public DataModel getModel() {        return this.model;    }        /**     * Setter for property model.     *     * @param model     *            New value of property model.     */    public void setModel(DataModel model) {        this.model = model;    }        /**     * Getter for property renderer.     * @return Value of property renderer.     */    public DayRenderer getRenderer() {        return renderer;    }        /**     * Setter for property renderer.     * @param renderer New value of property renderer.     */    public void setRenderer(DayRenderer renderer) {        this.renderer = renderer;        for (int i = 0; i < paneles.length; i++) {            for (int j = 0; j < paneles[i].length; j++) {                paneles[i][j].setRenderer(renderer);            }        }    }        /**     * Getter for property headerRenderer.     * @return Value of property headerRenderer.     */    public HeaderRenderer getHeaderRenderer() {        return this.headerRenderer;    }        /**     * Setter for property headerRenderer.     * @param headerRenderer New value of property headerRenderer.     */    public void setHeaderRenderer(HeaderRenderer headerRenderer) {        this.headerRenderer = headerRenderer;        for (int i = 0; i < headers.length; i++) {            headers[i].setRenderer(headerRenderer);        }        if (showWeekNumber) {            for (int i = 0; i < weeks.length; i++) {                weeks[i].setRenderer(headerRenderer);            }        }    }        /**     * 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) {        if (workingdays == null) return;        this.workingdays = workingdays;        for (int i = 0; i < paneles.length; i++) {            for (int j = 0; j < paneles[i].length; j++) {                paneles[i][j].setWorking(workingdays[dayorder[j + 1] - 1]);            }        }    }        private boolean compareDates(Date d1, Date d2) {        check.setTime(d1);        int year = check.get(Calendar.YEAR);        int month = check.get(Calendar.MONTH);        int day = check.get(Calendar.DAY_OF_MONTH);        check.setTime(d2);        if (day != check.get(Calendar.DAY_OF_MONTH)) {            return false;        }        if (month != check.get(Calendar.MONTH)) {            return false;        }        if (year != check.get(Calendar.YEAR)) {            return false;        }        return true;    }        /**     * Getter for property firstDayOfWeek.     * @return Value of property firstDayOfWeek.     */    public int getFirstDayOfWeek() {        return calendar.getFirstDayOfWeek();    }        /**     * Setter for property firstDayOfWeek.     * @param firstDayOfWeek New value of property firstDayOfWeek.     */    public void setFirstDayOfWeek(int firstDayOfWeek) {        if ((firstDayOfWeek == Calendar.MONDAY) || (firstDayOfWeek == Calendar.SUNDAY)) {            calendar.setFirstDayOfWeek(firstDayOfWeek);            check.setFirstDayOfWeek(firstDayOfWeek);            if (firstDayOfWeek == Calendar.SUNDAY) {                dayorder = SUNDAYFIRST;            } else dayorder = MONDAYFIRST;            setHeaders();            setMonth(getMonth());        }        setWorkingdays(getWorkingdays());    }        /**     * @return Returns the defaultWorking.     */    public static boolean[] getDefaultWorking() {        return DEFAULTWORKING;    }        /**     * Notifies all registered listeners about the event.     *     * @param event The event to be fired     */    private void fireMonthChangeListenerMonthIncreased(net.sf.nachocalendar.event.MonthChangeEvent event) {        if (listenerList == null) return;        Object[] listeners = listenerList.getListenerList();        for (int i = listeners.length-2; i>=0; i-=2) {            if (listeners[i]==net.sf.nachocalendar.event.MonthChangeListener.class) {                ((net.sf.nachocalendar.event.MonthChangeListener)listeners[i+1]).monthIncreased(event);            }        }    }        /**     * Notifies all registered listeners about the event.     *     * @param event The event to be fired     */    private void fireMonthChangeListenerMonthDecreased(net.sf.nachocalendar.event.MonthChangeEvent event) {        if (listenerList == null) return;        Object[] listeners = listenerList.getListenerList();        for (int i = listeners.length-2; i>=0; i-=2) {            if (listeners[i]==net.sf.nachocalendar.event.MonthChangeListener.class) {                ((net.sf.nachocalendar.event.MonthChangeListener)listeners[i+1]).monthDecreased(event);            }        }    }        /**     * Getter for property listSelectionModel.     * @return Value of property listSelectionModel.     */    /*public ListSelectionModel getListSelectionModel() {        return this.listSelectionModel;    }*/        /**     * Setter for property listSelectionModel.     * @param listSelectionModel New value of property listSelectionModel.     */    /*public void setListSelectionModel(ListSelectionModel listSelectionModel) {        this.listSelectionModel.removeListSelectionListener(listlistener);        this.listSelectionModel = listSelectionModel;        listSelectionModel.addListSelectionListener(listlistener);    }*/        /**     * Enables or disables the component     * @param b true for enabling     */    public void setEnabled(boolean b) {        for (int i=0; i < daypanels.length; i++) {            daypanels[i].setComponentEnabled(b);        }    }        /**     * Getter for enabled property     * @return true if it's enabled     */    public boolean isEnabled() {        return daypanels[0].isComponentEnabled();    }        /*public void clearSelection() {        listSelectionModel.clearSelection();    }*/        /**     * Sets the selection mode     * @param mode the new mode     */    /*public void setSelectionMode(int mode) {        listSelectionModel.setSelectionMode(mode);    }*/        /**     * Returns the current selection mode     * @return selection mode     */    /*public int getSelectionMode() {        return listSelectionModel.getSelectionMode();    }*/        /**     * @return Returns the antiAliased.     */    public boolean isAntiAliased() {        return antiAliased;    }    /**     * @param antiAliased The antiAliased to set.     */    public void setAntiAliased(boolean antiAliased) {        this.antiAliased = antiAliased;        for (int i=0; i < daypanels.length; i++) {            daypanels[i].setAntiAliased(antiAliased);        }                for (int i=0; i < headers.length; i++) {            headers[i].setAntiAliased(antiAliased);        }                if (showWeekNumber) {            for (int i=0; i < weeks.length; i++) {                weeks[i].setAntiAliased(antiAliased);            }        }        repaint();    }    /**     * @return Returns the daypanels.     */    protected DayPanel[] getDaypanels() {        return daypanels;    }    /**     * @param daypanels The daypanels to set.     */    protected void setDaypanels(DayPanel[] daypanels) {        this.daypanels = daypanels;    }        public Date getMinDate() {        Calendar cal = new GregorianCalendar();        cal.setTime(date);        cal.add(Calendar.DAY_OF_MONTH, (cal.get(Calendar.DAY_OF_MONTH) * -1) + 1);        return cal.getTime();    }        public Date getMaxDate() {        Calendar cal = new GregorianCalendar();        cal.setTime(date);        cal.add(Calendar.DAY_OF_MONTH, (cal.get(Calendar.DAY_OF_MONTH) * -1) + 1);        cal.add(Calendar.MONTH,1);        cal.add(Calendar.DAY_OF_YEAR, -1);        return cal.getTime();    }}

⌨️ 快捷键说明

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