亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? jdatepicker.java

?? OpenSwing的經典示例
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
                            textComponent.setText(strDate.substring(0, 8) +
                                                  "01");
                            textComponent.setCaretPosition(iCaretPosition + 1);
                        }
                        return (intD <= 29 && intD > 0);
                    }
                    else {
                        //如果輸入大于28,則修改為28
                        if (intD > 28) {
                            textComponent.setText(strDate.substring(0, 8) +
                                                  "28");
                            textComponent.setCaretPosition(iCaretPosition + 1);
                        }
                        if (intD < 1) {
                            textComponent.setText(strDate.substring(0, 8) +
                                                  "01");
                            textComponent.setCaretPosition(iCaretPosition + 1);
                        }
                        return (intD <= 28 && intD > 0);
                    }
                    //默認返回假
                default:
                    return false;
            }
        }

        public static String getCurrentDate() {
            return (new java.text.SimpleDateFormat("yyyy-MM-dd")).format(new
                java.util.Date());
        }
    }

    /**
     * <p>Title: JDatePicker</p>
     * <p>Description: DatePopup 選擇框彈出的日期選擇面板</p>
     * <p>Copyright: Copyright (c) 2004</p>
     * <p>Company: </p>
     * @author <a href="mailto:sunkingxie@hotmail.com"'>Sunking</a>
     * @version 1.0
     */
    class DatePopup
        extends BasicComboPopup {
        protected Calendar calendar;
        protected JLabel monthLabel;
        protected JPanel days = null;

        protected Color selectedBackground;
        protected Color selectedForeground;
        protected Color background;
        protected Color foreground;
        ImageIcon todayIcon;

        public DatePopup(JComboBox box) {
            super(box);
            todayIcon = OpenSwingUtil.getOpenSwingImage("today.gif",
                new ImageIcon());
            calendar = Calendar.getInstance();
            background = UIManager.getColor("ComboBox.background");
            foreground = UIManager.getColor("ComboBox.foreground");
            selectedBackground = UIManager.getColor(
                "ComboBox.selectionBackground");
            selectedForeground = UIManager.getColor(
                "ComboBox.selectionForeground");
            initializePopup();
        }

        /**
         * 初始化彈出面板
         */
        protected void initializePopup() {
            //   << <   9999/99/99  > >>
            JPanel header = new JPanel();
            header.setLayout(new BoxLayout(header, BoxLayout.X_AXIS));
            header.setBackground(new Color(0, 0, 128));
            header.setForeground(Color.white);
            header.setPreferredSize(new Dimension(1, 25));

            JLabel label;
            label = createUpdateButton(Calendar.YEAR, -1);
            label.setText("<<");
            header.add(Box.createHorizontalStrut(12));
            header.add(label);
            header.add(Box.createHorizontalStrut(12));

            label = createUpdateButton(Calendar.MONTH, -1);
            label.setText("< ");
            header.add(label);

            monthLabel = new JLabel("", JLabel.CENTER);
            monthLabel.setBackground(new Color(0, 0, 128));
            monthLabel.setForeground(Color.white);
            header.add(Box.createHorizontalGlue());
            header.add(monthLabel);
            header.add(Box.createHorizontalGlue());

            label = createUpdateButton(Calendar.MONTH, 1);
            label.setText(" >");
            header.add(label);

            label = createUpdateButton(Calendar.YEAR, 1);
            label.setText(">>");

            header.add(Box.createHorizontalStrut(12));
            header.add(label);
            header.add(Box.createHorizontalStrut(12));

            //星期日 星期一 星期二 星期三 星期四 星期五 星期六
            JPanel pWeeks = new JPanel(new GridLayout(0, 7));
            pWeeks.setBackground(background);
            pWeeks.setOpaque(true);
            DateFormatSymbols sy = new DateFormatSymbols(Locale.getDefault());
            String strWeeks[] = sy.getShortWeekdays();
            for (int i = 1; i <= 7; i++) {
                label = new JLabel();
                label.setHorizontalAlignment(JLabel.CENTER);
                label.setForeground(foreground);
                label.setText(strWeeks[i]);
                pWeeks.add(label);
            }
            //中間放日期的面板
            days = new JPanel(new GridLayout(0, 7));
            days.setBorder(new TopBottomLineBorder(Color.black));
            days.setBackground(background);
            days.setOpaque(true);
            JPanel pCenter = new JPanel(new BorderLayout());
            pCenter.setBackground(background);
            pCenter.setOpaque(true);
            pCenter.add(pWeeks, BorderLayout.NORTH);
            pCenter.add(days, BorderLayout.CENTER);
            //顯示今天的日期,直接單擊圖標跳到今天
            JLabel lbToday = new JDayLable(new Date(), "Today:"
                                           + dateFormat.format(new Date()));
            lbToday.setIcon(todayIcon);
            lbToday.setHorizontalAlignment(JLabel.LEFT);
            JPanel pSouth = new JPanel(new BorderLayout());
            pSouth.setBackground(background);
            pSouth.setForeground(foreground);
            pSouth.add(lbToday, BorderLayout.CENTER);

            setForeground(foreground);
            setBackground(background);
            setBorder(BorderFactory.createLineBorder(Color.black));
            setLayout(new BorderLayout());
            removeAll();
            add(BorderLayout.NORTH, header);
            add(BorderLayout.CENTER, pCenter);
            add(BorderLayout.SOUTH, pSouth);
        }

        /**
         * 顯示彈出面板
         */
        public void show() {
            updatePopup();
            super.show();
        }

        /**
         * 創建上一月,下一月,上一年,下一年"按鈕"
         * @param field int
         * @param amount int
         * @return JLabel
         */
        protected JLabel createUpdateButton(final int field, final int amount) {
            final JLabel label = new JLabel();
            final Border selectedBorder = new LineBorder(Color.black);
            final Border unselectedBorder = new EmptyBorder(selectedBorder.
                getBorderInsets(new JLabel()));
            label.setBorder(unselectedBorder);
            label.setBackground(new Color(0, 0, 128));
            label.setForeground(Color.white);
            label.setRequestFocusEnabled(false);
            label.addMouseListener(new MouseAdapter() {
                public void mouseReleased(MouseEvent e) {
                    calendar.add(field, amount);
                    updatePopup();
                }

                public void mouseEntered(MouseEvent e) {
                    label.setBorder(selectedBorder);
                }

                public void mouseExited(MouseEvent e) {
                    label.setBorder(unselectedBorder);
                }
            });
            return label;
        }

        /**
         * 更新日期
         */
        protected void updatePopup() {
            monthLabel.setText(monthFormat.format(calendar.getTime()));
            days.removeAll();

            Calendar setupCalendar = (Calendar) calendar.clone();
            setupCalendar.set(Calendar.DAY_OF_MONTH, 1);
            int first = setupCalendar.get(Calendar.DAY_OF_WEEK);
            /**
                            1  2  3  4  5  6  7
             2  3  4  5  6  7  8  9  10 11 12 13
             8  9  10 11 12 13 14 15 16 17 18 19
             14 15 16 17 18 19 20 21 22 23 24 25
             20 21 22 23 24 25 26 27 28 29 30 31
             26 27 28 29 30 31
             */
            setupCalendar.add(Calendar.DATE, -first);
            int flag = 0;
            for (int i = 0; i < 42; i++) {
                setupCalendar.add(Calendar.DATE, 1);
                String txt = dayFormat.format(setupCalendar.getTime());
                JLabel label = new JDayLable(setupCalendar.getTime(), txt);
                days.add(label);
                if (txt.equals("1")) {
                    flag++;
                }
                if (flag != 1) {
                    label.setEnabled(false);
                }
            }
            days.repaint();
            pack();
        }

        /**
         * <p>Title: OpenSwing</p>
         * <p>Description: TopBottomLineBorder只帶上下兩條線的邊界Border</p>
         * <p>Copyright: Copyright (c) 2004</p>
         * <p>Company: </p>
         * @author <a href="mailto:sunkingxie@hotmail.com">SunKing</a>
         * @version 1.0
         */
        class TopBottomLineBorder
            extends AbstractBorder {
            private Color lineColor;
            public TopBottomLineBorder(Color color) {
                lineColor = color;
            }

            public void paintBorder(Component c, Graphics g, int x, int y,
                                    int width, int height) {
                g.setColor(lineColor);
                g.drawLine(0, 0, c.getWidth(), 0);
                g.drawLine(0, c.getHeight() - 1, c.getWidth(),
                           c.getHeight() - 1);
            }
        }

        /**
         * <p>Title: JDatePicker</p>
         * <p>Description:JDayLable 帶選取日期功能的JLabel </p>
         * <p>Copyright: Copyright (c) 2004</p>
         * <p>Company: </p>
         * @author <a href="mailto:sunkingxie@hotmail.com"'>Sunking</a>
         * @version 1.0
         */
        class JDayLable
            extends JLabel
            implements MouseListener {
            Date date;
            Image img;
            boolean isToday = false;
            public JDayLable(Date date, String text) {
                setHorizontalAlignment(JLabel.CENTER);
                setForeground(foreground);
                setPreferredSize(new Dimension(40, 20));
                setToolTipText(dateFormat.format(date));
                addMouseListener(this);
                this.date = date;
                setText(text);
                Date d = new Date();
                isToday = (text.length() < 3) &&
                    dateFormat.format(date).equals(dateFormat.format(d));
                if (calendar.getTime().equals(date)) {
                    setBorder(new LineBorder(selectedBackground, 1));
                }
            }

            public void mousePressed(MouseEvent e) {}

            public void mouseClicked(MouseEvent e) {}

            public void mouseReleased(MouseEvent e) {
                if (isEnabled()) {
                    setOpaque(false);
                    setBackground(background);
                    setForeground(foreground);
                }
                calendar.setTime(date);

                if (comboBox.isEditable() && comboBox.getEditor() != null) {
                    comboBox.configureEditor(comboBox.getEditor(),
                                             dateFormat.format(calendar.getTime()));
                }
                comboBox.setSelectedItem(dateFormat.format(calendar.getTime()));
                comboBox.setPopupVisible(false);
            }

            public void mouseEntered(MouseEvent e) {
                if (isEnabled()) {
                    setOpaque(true);
                    setBackground(selectedBackground);
                    setForeground(selectedForeground);
                }
            }

            public void mouseExited(MouseEvent e) {
                if (isEnabled()) {
                    setOpaque(false);
                    setBackground(background);
                    setForeground(foreground);
                }
            }

            public void paint(Graphics g) {
                super.paint(g);
                if (isToday && todayIcon != null && isEnabled()) {
                    int x = (this.getWidth() - todayIcon.getIconWidth()) / 2;
                    int y = (this.getHeight() - todayIcon.getIconHeight()) / 2;
                    todayIcon.paintIcon(this, g, x, y);
                }
            }
        }
    }

    /**
     * 測試JDatePicker
     */
    public static void main(String args[]) {
        try {
//            UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
//            UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
//            UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel");
            Font font = new Font("SimSun", Font.PLAIN, 12);
            java.util.Enumeration keys = UIManager.getLookAndFeelDefaults().
                keys();
            while (keys.hasMoreElements()) {
                Object key = keys.nextElement();
                if (UIManager.get(key) instanceof Font) {
                    UIManager.put(key, font);
                }
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }

        JFrame f = new JFrame("JDatePicker Demo");
        JPanel c = new JPanel();
        c.add(new JLabel("From:"));
        JDatePicker datePickerFrom = new JDatePicker();
        c.add(datePickerFrom);
        c.add(new JLabel("To:"));
        JDatePicker datePickerTo = new JDatePicker();
        datePickerTo.setEditable(false);
        c.add(datePickerTo);
        f.getContentPane().add(c, BorderLayout.NORTH);

        f.getContentPane().add(new JDatePicker(), BorderLayout.SOUTH);

        final JTable table = new JTable(20, 10);
        JComboBox editor = new JDatePicker();
        editor.setBorder(null);
        table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        table.setDefaultEditor(Object.class, new DefaultCellEditor(editor));
        JScrollPane sp = new JScrollPane(table);
        f.getContentPane().add(sp, BorderLayout.CENTER);

        f.setSize(600, 400);
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        f.setLocation( (screenSize.width - f.getWidth()) / 2,
                      (screenSize.height - f.getHeight()) / 2);
//        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       f.show();
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精一区二区三区| 韩国中文字幕2020精品| 国产一区二区主播在线| 乱中年女人伦av一区二区| 成人小视频免费观看| 精品国内二区三区| 亚洲妇女屁股眼交7| 欧美高清dvd| 国产真实精品久久二三区| 亚洲精品国产品国语在线app| 精品欧美一区二区三区精品久久| 91网上在线视频| 成人国产精品免费观看动漫| 成人午夜av影视| 五月婷婷综合在线| 91色在线porny| 亚洲激情图片一区| 成人免费毛片嘿嘿连载视频| 国产日产欧产精品推荐色| av亚洲产国偷v产偷v自拍| 亚洲视频免费看| 日韩二区在线观看| 99在线热播精品免费| 久久婷婷综合激情| 色综合久久久久久久久| 亚洲最大的成人av| 久久久99免费| 欧美一区二区三区四区久久 | 亚洲欧美区自拍先锋| 欧美色偷偷大香| 国产福利一区在线| 紧缚奴在线一区二区三区| 日韩毛片高清在线播放| 欧美成人三级电影在线| 韩国女主播成人在线观看| 国产精品白丝在线| 欧美日韩一卡二卡三卡| av在线一区二区三区| 亚洲成人在线网站| 亚洲欧美日韩电影| 国产精品色哟哟| 国产亚洲欧洲一区高清在线观看| 在线视频国内自拍亚洲视频| 91成人网在线| 7799精品视频| 欧美激情综合五月色丁香| 中文字幕一区二| 亚洲精品免费在线播放| 五月天国产精品| 国产精品一线二线三线精华| 色婷婷av一区二区三区大白胸| 在线免费不卡视频| 精品91自产拍在线观看一区| 国产精品萝li| 日韩国产高清在线| 成人免费观看视频| 精品国产免费人成在线观看| 国产精品福利一区| 麻豆免费精品视频| 欧洲一区在线观看| 国产精品婷婷午夜在线观看| 一区二区三区免费| 成人app在线| 日韩精品色哟哟| 青青草国产精品亚洲专区无| 国产1区2区3区精品美女| 欧美一区二区日韩一区二区| 一区二区三区欧美日| 99久久免费国产| 国产精品久久久久久久浪潮网站| 久久9热精品视频| 日韩欧美国产一区二区三区 | 欧美一级日韩不卡播放免费| 亚洲午夜激情av| 337p亚洲精品色噜噜| 偷拍自拍另类欧美| 久久综合九色综合97婷婷女人 | 黄色日韩网站视频| 久久久国产精品不卡| 国产精品99久久久| 91丨porny丨最新| 欧美日韩视频在线一区二区| 久久久久国产精品麻豆| 国产精品久线观看视频| 亚洲一区成人在线| 国产乱码精品一区二区三区av | 蜜臀av在线播放一区二区三区| 在线视频一区二区三区| 亚洲欧美激情小说另类| 欧美日韩一区不卡| 麻豆精品蜜桃视频网站| 欧美经典一区二区| 欧美在线观看一二区| 亚洲福利视频一区二区| 日韩视频国产视频| 国产黄人亚洲片| 亚洲一区国产视频| 久久精品夜夜夜夜久久| 在线综合视频播放| 99视频超级精品| 日韩和的一区二区| 日韩欧美一区在线| 日本韩国一区二区三区| 国产不卡高清在线观看视频| 一区二区三区欧美久久| 久久精品网站免费观看| 欧美一区二区三区的| 91色视频在线| 国产高清不卡二三区| 日本午夜精品一区二区三区电影 | 91丨九色丨黑人外教| 高清免费成人av| 国产精品亚洲一区二区三区在线| 一区二区三区日韩欧美精品| 欧美激情综合五月色丁香小说| 欧美一区二区在线视频| 欧日韩精品视频| 欧美一区二区三区在线电影| 91精品国产综合久久精品麻豆 | 成人精品电影在线观看| 国产精品一品视频| 国产精一区二区三区| 国产原创一区二区三区| 精品一区二区三区欧美| 免费久久99精品国产| 精品一区二区三区在线播放视频| 亚洲成a人v欧美综合天堂下载| 伦理电影国产精品| 国产精品99久久久久| 色哟哟在线观看一区二区三区| 九九九精品视频| heyzo一本久久综合| 日韩无一区二区| 久久久蜜臀国产一区二区| 欧美激情一区在线观看| 综合网在线视频| 日本色综合中文字幕| 国产凹凸在线观看一区二区| 日本乱人伦一区| 国产精品日韩成人| 久久国产婷婷国产香蕉| 不卡的看片网站| 精品国产乱码久久久久久久久| 久久综合国产精品| 亚洲国产成人porn| 91视频精品在这里| 国产三区在线成人av| 老汉av免费一区二区三区| 一本一本大道香蕉久在线精品 | 国产精品第四页| 日韩中文字幕av电影| 成人教育av在线| 国产精品麻豆99久久久久久| 免费在线欧美视频| 欧美日韩国产综合久久| 精品国产一区二区亚洲人成毛片| 亚洲成人你懂的| 欧美午夜电影一区| 亚洲一区二区高清| 91麻豆精品国产自产在线 | 欧美videofree性高清杂交| 老司机精品视频在线| 欧美一区二区三区在线观看| 日韩二区三区四区| 91精品国产欧美一区二区18| 亚洲精品午夜久久久| 91网页版在线| 国产精品视频一区二区三区不卡| 亚洲成人av在线电影| 日本伦理一区二区| 免费观看日韩电影| 久久久久久99久久久精品网站| 久久电影网电视剧免费观看| 日韩一二三四区| 国产中文字幕精品| 欧美国产乱子伦| 91国产免费看| 精品一区二区免费在线观看| 国产精品麻豆欧美日韩ww| 成人av网站大全| 久久国产福利国产秒拍| 国产日产欧美一区二区视频| 风间由美一区二区av101| 天天综合色天天综合| 中文字幕乱码久久午夜不卡| 91福利在线导航| 91免费观看在线| 精品综合久久久久久8888| 国产精品白丝在线| 久久久国产综合精品女国产盗摄| 欧美性受xxxx黑人xyx性爽| 丁香桃色午夜亚洲一区二区三区| 亚洲国产毛片aaaaa无费看 | 色婷婷久久一区二区三区麻豆| 久久国产麻豆精品| 五月天国产精品| 蜜臀国产一区二区三区在线播放| 五月综合激情网| 日韩精品一区第一页| 悠悠色在线精品|