📄 toppanel.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 + -