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

📄 queryofweek.java

📁 约会管理系统
💻 JAVA
字号:
package P3;
import java.util.*; 
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

import javax.swing.*;
import javax.swing.border.*;
import javax.swing.event.*;
import javax.swing.plaf.basic.BasicArrowButton;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableCellRenderer;

import java.awt.*;
import java.awt.event.*;

public class QueryOfWeek extends QueryOfYear{
	private BasicArrowButton
	  left=new BasicArrowButton(BasicArrowButton.WEST),
	  right=new BasicArrowButton(BasicArrowButton.EAST);
	private int mday=0;
    private String castToString(Activity act){
    	StringBuilder sb=new StringBuilder();
		sb.append(act.getYear());
		sb.append("-");
		sb.append(act.getMonth());
		sb.append("-");
		sb.append(act.getDate());
		sb.append("  ");
		sb.append(act.getHour());
		sb.append(" : ");
		sb.append(act.getMinute());
		sb.append("    ");
		sb.append(act.getTitle());
		return sb.toString();
    }
    public void activitiesList(){
		if(activitiesOfYear==null)return;
		int days=calendar.get(Calendar.DAY_OF_YEAR);
		if(mday==0){
			for(int i=0;i<7;i++){
				Activities activities=(Activities) activitiesOfYear.get(days+i);
				if(activities==null) continue;
				for(Map.Entry<Integer,Object> entry:activities.entrySet()){
					Activity activity=(Activity) entry.getValue();
					String s=castToString(activity);
					record.put(s,activity);
					lItems.addElement(s);
				}
			}
		}else if(mday<0){
			for(int i=0;i<7+mday;i++){
				Activities activities=(Activities) activitiesOfYear.get(days-i);
				if(activities==null) continue;
				for(Map.Entry<Integer,Object> entry:activities.entrySet()){
					Activity activity=(Activity) entry.getValue();
					String s=castToString(activity);
					record.put(s,activity);
					lItems.addElement(s);
				}
			}
			calendar.set(Calendar.DAY_OF_WEEK, 1);
			activitiesOfYear=(Activities) totalActivities.get(calendar.get(Calendar.YEAR));
			if(activitiesOfYear==null)return;
			else{
				days=calendar.get(Calendar.DAY_OF_YEAR);
				for(int i=0;i<-mday;i++){
					Activities activities=(Activities) activitiesOfYear.get(days+i);
					if(activities==null) continue;
					for(Map.Entry<Integer,Object> entry:activities.entrySet()){
						Activity activity=(Activity) entry.getValue();
						String s=castToString(activity);
						record.put(s,activity);
						lItems.addElement(s);
					}
				}
			}
		}else{
			for(int i=0;i<7-mday;i++){
				Activities activities=(Activities) activitiesOfYear.get(days+i);
				if(activities==null) continue;
				for(Map.Entry<Integer,Object> entry:activities.entrySet()){
					Activity activity=(Activity) entry.getValue();
					String s=castToString(activity);
					record.put(s,activity);
					lItems.addElement(s);
				}
			}
			activitiesOfYear=(Activities) totalActivities.get(calendar.get(Calendar.YEAR)+1);
			if(activitiesOfYear==null)return;
			else{
				days=1;
				for(int i=0;i<mday;i++){
					Activities activities=(Activities) activitiesOfYear.get(days++);
					if(activities==null) continue;
					for(Map.Entry<Integer,Object> entry:activities.entrySet()){
						Activity activity=(Activity) entry.getValue();
						String s=castToString(activity);
						record.put(s,activity);
						lItems.addElement(s);
					}
				}
			}
			calendar.set(Calendar.YEAR, mday+1);
			calendar.set(Calendar.DAY_OF_WEEK, 1);
		}
	}
    
	public QueryOfWeek(Activities ttActivities){
		super(ttActivities);
        calendar.set(Calendar.DAY_OF_WEEK,1);
        lItems.removeAllElements();
        activitiesList();
        left.addActionListener(new ActionListener() { 
                public void actionPerformed(ActionEvent actionEvent) {
                	int day=calendar.get(Calendar.DAY_OF_YEAR);
                	if(day<=7){
                		mday=8-day;
                	}
                	else{
                		mday=0;
                		calendar.set(Calendar.DAY_OF_YEAR, day-7); 
                	}
                	activitiesOfYear=(Activities) totalActivities.get(calendar.get(Calendar.YEAR));
                    lItems.removeAllElements();
                    activitiesList();
                } 
            });
        right.addActionListener(new ActionListener() { 
            public void actionPerformed(ActionEvent actionEvent) {
            	int day=calendar.get(Calendar.DAY_OF_YEAR);
            	int maxday=calendar.getMaximum(Calendar.YEAR);
            	if(maxday-day<7){
            		mday=7-maxday+day;
            	}
            	else{
            		mday=0;
            		calendar.set(Calendar.DAY_OF_YEAR, day+7); 
            	}
            	activitiesOfYear=(Activities) totalActivities.get(calendar.get(Calendar.YEAR));
                lItems.removeAllElements();
                activitiesList();
            } 
        });
        JPanel weeksPanel=new JPanel();
        weeksPanel.add(left);
        weeksPanel.add(right);
        timePanel.add(weeksPanel);
	}
	public static void run(final JFrame f){
		SwingUtilities.invokeLater(new Runnable(){
			public void run(){
				f.setTitle("weekly format");
				f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
				f.setSize(400, 480);
				f.setResizable(false);
				f.setVisible(true);
			}
		});
	}
	public static void main(String[] args){
		DateOrganizerSystem dateOrganizerSystem=new DateOrganizerSystem();
		ExecutorService exec=Executors.newCachedThreadPool();
		exec.execute(dateOrganizerSystem);
		DateOrganizerSystem.run(dateOrganizerSystem);
		exec.shutdown();
	}
}

⌨️ 快捷键说明

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