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

📄 monthpanel.java

📁 这个项目是为Java平台提供一个灵活的日历组件(Ok)
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
          //and then retrieve the Weeknumbers          int backToWeekStart=0;          int value = calendar.get(Calendar.DAY_OF_WEEK);          if (value == Calendar.SUNDAY) {            backToWeekStart = -6;          } else if (value == Calendar.MONDAY) {             backToWeekStart = 0;          } else if (value == Calendar.TUESDAY) {             backToWeekStart = -1;          } else if (value == Calendar.WEDNESDAY) {             backToWeekStart = -2;          } else if (value == Calendar.THURSDAY) {             backToWeekStart = -3;          } else if (value == Calendar.FRIDAY) {             backToWeekStart = -4;          } else if (value == Calendar.SATURDAY) {             backToWeekStart = -5;          }                    if (calendar.getFirstDayOfWeek() == Calendar.MONDAY) {            calendar.add(Calendar.DATE, backToWeekStart );          } else {            calendar.add(Calendar.DATE, backToWeekStart - 1 );          }                              for (int i = 0; i < weeks.length; i++) {            weeks[i].setValue(Integer.toString(calendar.get(Calendar.WEEK_OF_YEAR)));            calendar.add(Calendar.DATE,7); //jump to next week          }        }                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()));                    paneles[i][j].setPrintMoon(printMoon);                }            }        }        repaint();    }        /**     * Returns the currently selected day.     * @return selected Date     */    public Date getDay() {        return date;    }        /**     * 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);            }        }    }        /**     * Specifies how many days should the first week of the year contain <br>     * If not specified, i.e. 0, then no changes from the defaults are done     *      * @param number     */    public void  setMinimalDaysInFirstWeek(int number) {      if (minimalDaysInFirstWeek != number) {        minimalDaysInFirstWeek = number;        setHeaders();        setMonth(getMonth());      }    }        /**     * @return how many weekdays does the first week of the year have     */    public int getMinimalDaysInFirstWeek() {      return minimalDaysInFirstWeek;    }    /**     * 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]);            }        }    }            /**     * 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;    }        /**     * 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();    }        /**     * @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();    }        /**     * @return Returns the printMoon.     */    public boolean isPrintMoon() {      return printMoon;    }        /**     * @param printMoon The printMoon to set.     */    public void setPrintMoon(boolean printMoon) {      if (this.printMoon != printMoon) {                this.printMoon = printMoon;        for (int i = 0; i < paneles.length; i++) {          for (int j = 0; j < paneles[i].length; j++) {            paneles[i][j].setPrintMoon(printMoon);          }        }      }    }    }

⌨️ 快捷键说明

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