نمایش نتایج 1 تا 6 از 6

نام تاپیک: سورس تقویم شمسی Date Picker جاوا

  1. #1

    سورس تقویم شمسی Date Picker جاوا

    سلام،

    بنده این سورس تقویم شمسی جاوا رو قبلا نوشته بودم، و دیدم که این سورس شمسی در اینترنت کمیاب هست رو در اختیار عموم قرار دهم. البته وقت نکردم قابلیتهای بیشتری بهش اضافه کنم.

    پ.ن : برای استفاده کامل از آن لطفا کتابخونه این سورس را در سایت ICU4J دانلود نمایید.
    پ.ن 2: عکس این تقویم پیوست شد.


    /*
    /**
    *
    * @author Farhadsaberi@gmail.com

    */




    import com.ibm.icu.util.Calendar;
    import com.ibm.icu.util.ULocale;
    import java.awt.*;
    import java.awt.event.*;
    import java.util.Date;
    import javax.swing.*;
    public class datePicker {
    private ULocale locale = new ULocale("fa_IR@calendar=persian");
    private Calendar calendar = Calendar.getInstance(locale);
    JLabel l = new JLabel("", JLabel.CENTER);
    String day = "";
    JDialog d;
    private Date nowDate = null; //current date
    JButton[] button = new JButton[49];
    public datePicker(JFrame parent) {
    d = new JDialog();
    d.setModal(true);
    String[] header = { "شنبه", "یکشنبه", "دوشنبه", "سه شنبه", "چهارشنبه", "پنجشنبه", "جمعه" };
    JPanel p0 = new JPanel(new GridLayout(1, 20));
    JPanel p1 = new JPanel(new GridLayout(7, 7));
    p0.setPreferredSize(new Dimension(20, 20));
    p1.setPreferredSize(new Dimension(430, 120));
    p0.applyComponentOrientation(
    ComponentOrientation.RIGHT_TO_LEFT);
    p1.applyComponentOrientation(
    ComponentOrientation.RIGHT_TO_LEFT);
    for (int x = 0; x < button.length; x++) {
    final int selection = x;
    button[x] = new JButton();
    button[x].setFocusPainted(false);
    button[x].setBackground(Color.white);
    button[x].addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent ae) {
    day = button[selection].getActionCommand();
    d.dispose();
    }
    });
    if (x < 7) {
    p0.add(new JLabel(header[x],JLabel.CENTER));
    }
    p1.add(button[x]);
    }
    JPanel p2 = new JPanel(new GridLayout(1, 3));
    JButton previous = new JButton();
    previous.setIcon(new javax.swing.ImageIcon(getClass().getResource("/MainSource/images/back.png")));
    previous.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent ae) {
    moveTo(calendar.MONTH, 1);
    }
    });
    p2.add(previous);
    p2.add(l);
    JButton next = new JButton();
    next.setIcon(new javax.swing.ImageIcon(getClass().getResource("/MainSource/images/next.png")));
    next.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent ae) {
    moveTo(calendar.MONTH, -1);
    }
    });
    p2.add(next);
    d.add(p0, BorderLayout.NORTH);
    d.add(p1, BorderLayout.CENTER);
    d.add(p2, BorderLayout.SOUTH);
    d.pack();
    d.setLocationRelativeTo(parent);
    Calendar now = Calendar.getInstance(locale); //
    nowDate = new Date(now.getTimeInMillis());
    d.setTitle("تقویم شمسی");
    displayDate(now);
    d.setVisible(true);
    }

    public String setPickedDate() {
    if (day.equals(""))
    return day;
    int month= calendar.get(calendar.MONTH)+1;
    int year = calendar.get(calendar.YEAR);
    String date = l.getText()+"/"+day;
    return date;
    }

    private void displayDate(Calendar now) {
    int currentDay = now.get(calendar.DATE);
    now.add(calendar.DAY_OF_MONTH, -(now.get(calendar.DATE) - 1)); //
    int startIndex = now.get(calendar.DAY_OF_WEEK); //
    int year = now.get(calendar.YEAR); //
    int month = now.get(calendar.MONTH) + 1; //
    int lastDay = this.getLastDayOfMonth(year, month); //
    int endIndex = startIndex + lastDay - 1; //
    int startday = 1;
    for (int x = 0; x < button.length; x++)
    button[x].setText("");
    for (int i = 0; i < button.length; i++) {
    Color temp = button[i].getBackground();
    if (temp.equals(Color.BLUE)) {
    button[i].setBackground(Color.white);
    }
    }

    for (int i = startIndex; i < button.length; i++) {
    if (i >= startIndex && i <= endIndex) {
    button[i].setText("" + startday);
    if (startday == currentDay) {
    button[i].setBackground(Color.BLUE);
    }


    l.setText(Integer.toString(year) + "/" + Integer.toString(month));
    startday++;
    } else {
    button[i].setText("");
    }
    }


    }
    private int getLastDayOfMonth(int year, int month) {
    if (month == 1 ||
    month == 2 ||
    month == 3 ||
    month == 4 ||
    month == 5 ||
    month == 6 ) {
    return 31;
    }
    if (month == 7 ||
    month == 8 ||
    month == 9 ||
    month == 10 ||
    month == 11 ) {
    return 30;
    }
    if (month == 12) {
    if (isLeapYear(year)) {
    return 29;
    } else {
    return 29;
    }
    }
    return 0;
    }
    public boolean isLeapYear(int year) {
    return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
    }
    private void moveTo(int type, int value) {
    Calendar now = Calendar.getInstance(locale);
    now.setTime(nowDate);
    now.add(type, value);
    nowDate = new Date(now.getTimeInMillis());
    int month= now.get(calendar.MONTH)+1;
    int year = now.get(calendar.YEAR);
    displayDate(now);
    }

    public static void main(String[] args) {
    try {
    javax.swing.UIManager.setLookAndFeel("com.birosoft .liquid.LiquidLookAndFeel");


    } catch (Exception e) {
    }

    }
    }
    عکس های ضمیمه عکس های ضمیمه
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله farhadsaberi : سه شنبه 12 آبان 1394 در 14:31 عصر

  2. #2

    نقل قول: سورس تقویم شمسی Date Picker جاوا

    با سلام شما میتوانید از لینک زیر Datepicker تاریخ شمسی رو دریافت کنید و در پروژه های java و NetBeans استفاده کنید

    http://sunfile.sellfile.ir/prod-4207...+Netbeans.html

    img.jpg

  3. #3

    نقل قول: سورس تقویم شمسی Date Picker جاوا

    با سلام

    وقت شما بخیر

    ممنون از کدی که گذاشتید. واقعا کار بسیار با ارزشی انجام دادید. خیلی خوشحالم که توی ایران هم افرادی مثل شما پیدا میشوند که بی هیچ چشمداشتی حاصل تلاششون را در اختیار بقیه قرار بدهند و به اونها کمک کنند.

    براتون آرزوی موفقیت روزافزون دارم.
    در پناه حق.

  4. #4

    نقل قول: سورس تقویم شمسی Date Picker جاوا

    با عرض سلام و وقت بخیر

    در لینکی که گذاشتید هیچ کدی وجود ندارد. برای شما امکانش وجود دارد که سورس کد را در اینجا قرار دهید؟

    سپاسگزارم.

  5. #5

    نقل قول: سورس تقویم شمسی Date Picker جاوا

    نقل قول نوشته شده توسط rezasa341 مشاهده تاپیک
    با سلام شما میتوانید از لینک زیر Datepicker تاریخ شمسی رو دریافت کنید و در پروژه های java و NetBeans استفاده کنید

    http://sunfile.sellfile.ir/prod-4207...+Netbeans.html

    img.jpg

    با عرض سلام و وقت بخیر

    در لینکی که گذاشتید هیچ کدی وجود ندارد. برای شما امکانش وجود دارد که سورس کد را در اینجا قرار دهید؟

    سپاسگزارم.

  6. #6
    کاربر دائمی آواتار vahid-p
    تاریخ عضویت
    آذر 1391
    محل زندگی
    تهران
    پست
    1,140

    نقل قول: سورس تقویم شمسی Date Picker جاوا

    نقل قول نوشته شده توسط simran مشاهده تاپیک
    با عرض سلام و وقت بخیر

    در لینکی که گذاشتید هیچ کدی وجود ندارد. برای شما امکانش وجود دارد که سورس کد را در اینجا قرار دهید؟

    سپاسگزارم.
    تو همون سایت چک میکردید، لینکش بود. هر چند فایلشون رایگان نیست و باید خرید کنید. به هر حال این لینکش:
    http://sunfile.sellfile.ir/prod-5370...+Netbeans.html

تاپیک های مشابه

  1. date picker تقویم شمسی
    نوشته شده توسط japho. در بخش Java SE : نگارش استاندارد جاوا
    پاسخ: 1
    آخرین پست: سه شنبه 23 اسفند 1390, 11:07 صبح
  2. مبتدی: تقویم شمسی date time picker
    نوشته شده توسط e.motahari در بخش VB.NET
    پاسخ: 5
    آخرین پست: یک شنبه 15 آبان 1390, 19:25 عصر
  3. مشکل date picker جاوا با آپدیت پنل
    نوشته شده توسط neynavaz در بخش ASP.NET Web Forms
    پاسخ: 0
    آخرین پست: دوشنبه 18 مهر 1390, 16:05 عصر
  4. تقویم شمسی برای جاوا
    نوشته شده توسط oracle_2007 در بخش برنامه‌نویسی جاوا
    پاسخ: 7
    آخرین پست: دوشنبه 21 مرداد 1387, 12:45 عصر
  5. درخواست سورس تقویم شمسی
    نوشته شده توسط soltany در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 3
    آخرین پست: یک شنبه 19 خرداد 1387, 09:04 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •