求java万年历代码

要求:1.星期日左边添加一列显示周数2.鼠标放到某天上面,在最下面显示当天的日期如“星期二5月21日”。你的举手之劳,对我来说很重要。我的邮箱是valsong@163.c... 要求:
1.星期日左边 添加一列 显示周数

2.鼠标放到某天上面, 在最下面显示当天的日期 如“星期二 5月21日”。

你的举手之劳,对我来说很重要。

我的邮箱是valsong@163.com
怎么联系你啊,直接发给我吧,发给我我就把分给你,或者留下你的邮箱我联系你
展开
 我来答
wzjlovemjx
2011-06-28 · TA获得超过6528个赞
知道小有建树答主
回答量:457
采纳率:0%
帮助的人:776万
展开全部

package clock;

/** *//**

 * MainFrame.java

 * Summary 万年历主类

 * Created on

 * @author

 * remark 

 */

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.GridLayout;

import java.awt.Toolkit;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.sql.Date;

import java.util.Calendar;

import javax.swing.JComboBox;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

class MainFrame extends JFrame {

    /** *//**

     * 

     */

    private static final long serialVersionUID = 1L;

    JPanel panel = new JPanel(new BorderLayout());

    JPanel panel1 = new JPanel();

    JPanel panel2 = new JPanel(new GridLayout(7, 7));

    JPanel panel3 = new JPanel();

    JLabel[] label = new JLabel[49];

    JLabel y_label = new JLabel("年份");

    JLabel m_label = new JLabel("月份");

    JComboBox com1 = new JComboBox();

    JComboBox com2 = new JComboBox();

    int re_year, re_month;

    int x_size, y_size;

    String year_num;

    Calendar now = Calendar.getInstance(); // 实例化Calendar

    MainFrame() {

        super("万年历");

        setSize(300, 350);

        x_size = (int) (Toolkit.getDefaultToolkit().getScreenSize().getWidth());

        y_size = (int) (Toolkit.getDefaultToolkit().getScreenSize().getHeight());

        setLocation((x_size - 300) / 2, (y_size - 350) / 2);

        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        panel1.add(y_label);

        panel1.add(com1);

        panel1.add(m_label);

        panel1.add(com2);

        for (int i = 0; i < 49; i++) {

            label[i] = new JLabel("", JLabel.CENTER);// 将显示的字符设置为居中

            panel2.add(label[i]);

        }

        panel3.add(new Clock(this));

        panel.add(panel1, BorderLayout.NORTH);

        panel.add(panel2, BorderLayout.CENTER);

        panel.add(panel3, BorderLayout.SOUTH);

        panel.setBackground(Color.white);

        panel1.setBackground(Color.white);

        panel2.setBackground(Color.white);

        panel3.setBackground(Color.white);

        Init();

        com1.addActionListener(new ClockAction());

        com2.addActionListener(new ClockAction());

        setContentPane(panel);

        setVisible(true);

        setResizable(false);

    }

    class ClockAction implements ActionListener {

        public void actionPerformed(ActionEvent arg0) {

            int c_year, c_month, c_week;

            c_year = Integer.parseInt(com1.getSelectedItem().toString()); // 得到当前所选年份

            c_month = Integer.parseInt(com2.getSelectedItem().toString()) - 1; // 得到当前月份,并减1,计算机中的月为0-11

            c_week = use(c_year, c_month); // 调用函数use,得到星期几

            Resetday(c_week, c_year, c_month); // 调用函数Resetday

        }

    }

    

    public void Init() {

        int year, month_num, first_day_num;

        String log[] = { "日", "一", "二", "三", "四", "五", "六" };

        for (int i = 0; i < 7; i++) {

            label[i].setText(log[i]);

        }

        for (int i = 0; i < 49; i = i + 7) {

            label[i].setForeground(Color.red); // 将星期日的日期设置为红色

        }

        for (int i = 6; i < 49; i = i + 7) {

            label[i].setForeground(Color.green);// 将星期六的日期设置为绿色

        }

        for (int i = 1; i < 10000; i++) {

            com1.addItem("" + i);

        }

        for (int i = 1; i < 13; i++) {

            com2.addItem("" + i);

        }

        month_num = (int) (now.get(Calendar.MONTH)); // 得到当前时间的月份

        year = (int) (now.get(Calendar.YEAR)); // 得到当前时间的年份

        com1.setSelectedIndex(year - 1); // 设置下拉列表显示为当前年

        com2.setSelectedIndex(month_num); // 设置下拉列表显示为当前月

        first_day_num = use(year, month_num);

        Resetday(first_day_num, year, month_num);

    }

    public int use(int reyear, int remonth) {

        int week_num;

        now.set(reyear, remonth, 1); // 设置时间为所要查询的年月的第一天

        week_num = (int) (now.get(Calendar.DAY_OF_WEEK));// 得到第一天的星期

        return week_num;

    }

    @SuppressWarnings("deprecation")

    public void Resetday(int week_log, int year_log, int month_log) {

        int month_day_score; // 存储月份的天数

        int count;

        month_day_score = 0;

        count = 1;

        Date date = new Date(year_log, month_log + 1, 1); // now

        Calendar cal = Calendar.getInstance();

        cal.setTime(date);

        cal.add(Calendar.MONTH, -1); // 前个月

        month_day_score = cal.getActualMaximum(Calendar.DAY_OF_MONTH);// 最后一天

        for (int i = 7; i < 49; i++) { // 初始化标签

            label[i].setText("");

        }

        week_log = week_log + 6; // 将星期数加6,使显示正确

        month_day_score = month_day_score + week_log;

        for (int i = week_log; i < month_day_score; i++, count++) {

            label[i].setText(count + "");

        }

    }

    public static void main(String[] args) {

        JFrame.setDefaultLookAndFeelDecorated(true);

        new MainFrame();

    }

}

package clock;

/** *//**

 * Clock.java

 * Summary 数字时间显示

 * Created on

 * @author

 * remark 

 */

import java.awt.Canvas;

import java.awt.Color;

import java.awt.Font;

import java.awt.Graphics;

import java.text.SimpleDateFormat;

import java.util.Calendar;

class Clock extends Canvas implements Runnable{

    /** *//**

     * 

     */

    private static final long serialVersionUID = 3660124045489727166L;

    MainFrame mf;

    Thread t;

    String time;

    public Clock(MainFrame mf){

    this.mf=mf;

    setSize(280,40);

    setBackground(Color.white);

    t=new Thread(this);                //实例化线程

    t.start();                        //调用线程

    }

    public void run(){

    while(true){

    try{

    Thread.sleep(1000);                    //休眠1秒钟

    }catch(InterruptedException e){

    System.out.println("异常");

    }

    this.repaint(100);

    }

    }

    public void paint(Graphics g){

    Font f=new Font("宋体",Font.BOLD,16);

    SimpleDateFormat SDF=new SimpleDateFormat("yyyy'年'MM'月'dd'日'HH:mm:ss");//格式化时间显示类型

    Calendar now=Calendar.getInstance();

    time=SDF.format(now.getTime());        //得到当前日期和时间

    g.setFont(f);

    g.setColor(Color.orange);

    g.drawString(time,45,25);

    }

}

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yunlkong
2011-07-11 · TA获得超过5711个赞
知道大有可为答主
回答量:9695
采纳率:0%
帮助的人:1.9亿
展开全部
To remove just one PieItem object:

Dim zgc As ZedGraph.ZedGraphControl = Me.ZedGraphControl1

Dim zgPane As ZedGraph.GraphPane = zgc.GraphPane
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yandonghai1
2011-06-22 · 贡献了超过200个回答
知道答主
回答量:200
采纳率:0%
帮助的人:71万
展开全部
我有这个,要的联系我,发给你.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式