"> سورس پروژه DatePicker شمسی به زبان جاوا

سورس پروژه DatePicker شمسی به زبان جاوا

رایگان

بعد از عضویت رایگان دانلود کنید.

عضویت در سایت

توضیحات

DatePicker شمسی

در این مطلب که یک نمونه سورس به زبان جاوا است ، پروژه datePicker شمسی که به زبان جاوا نوشته شده است.که قابلیت های گرافیکی بسیار جالبی در آن پیاده سازی شده است.شما میتوانید از نمونه سورس در java و همچنین NetBeans استفاده کنید.

DatePicker شمسی


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) {
}

}
}

اطلاعات بیشتر

زبان پروژه

جاوا

نقد و بررسی‌ها

هیچ دیدگاهی برای این محصول نوشته نشده است.

اولین کسی باشید که دیدگاهی می نویسد “سورس پروژه DatePicker شمسی به زبان جاوا”

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

اطلاعات فروشنده

کدیشن ! مارکت پروژه های برنامه نویسی راه اندازی شدیه توکه پا بریم ببینم