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

📄 toppanel.java

📁 用java的awt和swing自制一个 简单的日历
💻 JAVA
字号:
package calendar;

import javax.swing.*;
import java.awt.*;
import java.text.DateFormat;

public class TopPanel extends JPanel {

	private JPanel MDY;
	private JPanel ControlMDY;
	private Label Line1;
	private Label Line2;
	private DayLabel DD;
	private DayLabel MM;
	private DayLabel YYYY;
	private ModifyLabel addIcon;
	private ModifyLabel minusIcon;
	private static DayLabel currentLabel=null;
	public static TopPanel toppanel;
	
	public TopPanel() {
		currentTime time=MyCalendar.time;
		MDY = new javax.swing.JPanel();
		MM = new DayLabel(Integer.toString(time.getMonth()));
		MM.setName("MM");
		Line1 = new java.awt.Label("\u2014");
		DD = new DayLabel(Integer.toString(time.getDay()));
		DD.setName("DD");
		Line2 = new java.awt.Label("\u2014");
		YYYY = new DayLabel(Integer.toString(time.getYear()));
		YYYY.setName("YYYY");
		ControlMDY = new javax.swing.JPanel();
		addIcon = new ModifyLabel("^");
		minusIcon = new ModifyLabel("v");
		MM.setAlignment(java.awt.Label.CENTER);
		Line1.setAlignment(java.awt.Label.CENTER);
		DD.setAlignment(java.awt.Label.CENTER);
		Line2.setAlignment(java.awt.Label.CENTER);
		YYYY.setAlignment(java.awt.Label.CENTER);
		addIcon.setFont(new java.awt.Font("Arial Narrow", 0, 20));
		minusIcon.setFont(new java.awt.Font("Arial Narrow", 0, 18));
		addIcon.addMouseListener(addIcon);
		minusIcon.addMouseListener(minusIcon);
		DD.addMouseListener(DD);
		MM.addMouseListener(MM);
		YYYY.addMouseListener(YYYY);
		topPanelLayout();
		toppanel=this;
	}
	
	public void updateTime()
	{
		YYYY.setText(Integer.toString(MyCalendar.time.getYear()));
		MM.setText(Integer.toString(MyCalendar.time.getMonth()));
		DD.setText(Integer.toString(MyCalendar.time.getDay()));
	}
	public static void setCurrentLabel(DayLabel cur)
	{
		currentLabel=cur;
	}
	public static DayLabel getCurrentLabel()
	{
		return currentLabel;
	}
	/**
	 * 对面板进行布局
	 */
	private void topPanelLayout() {
		GroupLayout MDYLayout = new javax.swing.GroupLayout(MDY);
		MDY.setLayout(MDYLayout);
		MDYLayout.setHorizontalGroup(MDYLayout.createParallelGroup(
				javax.swing.GroupLayout.Alignment.LEADING).addGroup(
				MDYLayout.createSequentialGroup().addContainerGap()
						.addComponent(MM,
								GroupLayout.PREFERRED_SIZE,
								GroupLayout.DEFAULT_SIZE,
								GroupLayout.PREFERRED_SIZE).addGap(
								2, 2, 2).addComponent(Line1,
								GroupLayout.PREFERRED_SIZE, 16,
								GroupLayout.PREFERRED_SIZE).addGap(
								1, 1, 1).addComponent(DD,
								GroupLayout.PREFERRED_SIZE,
								GroupLayout.DEFAULT_SIZE,
								GroupLayout.PREFERRED_SIZE).addGap(
								2, 2, 2).addComponent(Line2,
								GroupLayout.PREFERRED_SIZE, 16,
								GroupLayout.PREFERRED_SIZE).addGap(
								2, 2, 2).addComponent(YYYY,
								GroupLayout.PREFERRED_SIZE,
								GroupLayout.DEFAULT_SIZE,
								GroupLayout.PREFERRED_SIZE)
						.addContainerGap(92, Short.MAX_VALUE)));
		MDYLayout
				.setVerticalGroup(MDYLayout
						.createParallelGroup(
								GroupLayout.Alignment.LEADING)
						.addGroup(
								MDYLayout
										.createSequentialGroup()
										.addContainerGap()
										.addGroup(
												MDYLayout
														.createParallelGroup(
																GroupLayout.Alignment.TRAILING)
														.addComponent(
																YYYY,
																GroupLayout.PREFERRED_SIZE,
																GroupLayout.DEFAULT_SIZE,
																GroupLayout.PREFERRED_SIZE)
														.addComponent(
																Line2,
																GroupLayout.PREFERRED_SIZE,
																GroupLayout.DEFAULT_SIZE,
																GroupLayout.PREFERRED_SIZE)
														.addComponent(
																DD,
																GroupLayout.PREFERRED_SIZE,
																GroupLayout.DEFAULT_SIZE,
																GroupLayout.PREFERRED_SIZE)
														.addComponent(
																Line1,
																GroupLayout.PREFERRED_SIZE,
																GroupLayout.DEFAULT_SIZE,
																GroupLayout.PREFERRED_SIZE)
														.addComponent(
																MM,
																GroupLayout.PREFERRED_SIZE,
																GroupLayout.DEFAULT_SIZE,
																GroupLayout.PREFERRED_SIZE))
										.addContainerGap(
												GroupLayout.DEFAULT_SIZE,
												Short.MAX_VALUE)));

	

		GroupLayout ControlMDYLayout = new GroupLayout(
				ControlMDY);
		ControlMDY.setLayout(ControlMDYLayout);
		ControlMDYLayout
				.setHorizontalGroup(ControlMDYLayout
						.createParallelGroup(
								GroupLayout.Alignment.LEADING)
						.addGroup(
								ControlMDYLayout
										.createSequentialGroup()
										.addContainerGap(20, Short.MAX_VALUE)
										.addGroup(
												ControlMDYLayout
														.createParallelGroup(
																GroupLayout.Alignment.LEADING)
														.addComponent(
																minusIcon,
																GroupLayout.Alignment.TRAILING,
																GroupLayout.PREFERRED_SIZE,
																GroupLayout.DEFAULT_SIZE,
																GroupLayout.PREFERRED_SIZE)
														.addComponent(
																addIcon,
																GroupLayout.Alignment.TRAILING,
																GroupLayout.PREFERRED_SIZE,
																GroupLayout.DEFAULT_SIZE,
																GroupLayout.PREFERRED_SIZE))
										.addContainerGap()));
		ControlMDYLayout.setVerticalGroup(ControlMDYLayout.createParallelGroup(
				GroupLayout.Alignment.LEADING).addGroup(
				GroupLayout.Alignment.TRAILING,
				ControlMDYLayout.createSequentialGroup().addComponent(addIcon,
						GroupLayout.PREFERRED_SIZE, 21,
						Short.MAX_VALUE).addPreferredGap(
						javax.swing.LayoutStyle.ComponentPlacement.RELATED)
						.addComponent(minusIcon,
								GroupLayout.PREFERRED_SIZE, 15,
								GroupLayout.PREFERRED_SIZE)
						.addContainerGap()));

		GroupLayout topPanelLayout = new GroupLayout(
				this);
		setLayout(topPanelLayout);
	     setBorder(javax.swing.BorderFactory
				.createLineBorder(new java.awt.Color(0, 0, 0)));
		topPanelLayout
				.setHorizontalGroup(topPanelLayout
						.createParallelGroup(
								GroupLayout.Alignment.LEADING)
						.addGroup(
								topPanelLayout
										.createSequentialGroup()
										.addComponent(
												MDY,
												GroupLayout.PREFERRED_SIZE,
												GroupLayout.DEFAULT_SIZE,
												GroupLayout.PREFERRED_SIZE)
										.addPreferredGap(
												javax.swing.LayoutStyle.ComponentPlacement.RELATED,
												204, Short.MAX_VALUE)
										.addComponent(
												ControlMDY,
												GroupLayout.PREFERRED_SIZE,
												GroupLayout.DEFAULT_SIZE,
												GroupLayout.PREFERRED_SIZE)
										.addContainerGap()));
		topPanelLayout.setVerticalGroup(topPanelLayout.createParallelGroup(
				GroupLayout.Alignment.LEADING).addGroup(
				topPanelLayout.createSequentialGroup().addGroup(
						topPanelLayout.createParallelGroup(
								GroupLayout.Alignment.LEADING)
								.addComponent(MDY,
										GroupLayout.PREFERRED_SIZE,
										GroupLayout.DEFAULT_SIZE,
										GroupLayout.PREFERRED_SIZE)
								.addComponent(ControlMDY, 0, 50,
										Short.MAX_VALUE)).addContainerGap()));
	}

	public DayLabel getDD() {
		return DD;
	}

	public void setDD(DayLabel dd) {
		DD = dd;
	}

	public DayLabel getMM() {
		return MM;
	}

	public void setMM(DayLabel mm) {
		MM = mm;
	}

	public DayLabel getYYYY() {
		return YYYY;
	}

	public void setYYYY(DayLabel yyyy) {
		YYYY = yyyy;
	}
	

}

⌨️ 快捷键说明

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