javaswing做一个日历
时间: 2024-12-13 18:25:35 浏览: 1
JavaSwing计算器和日历
在Java Swing中创建一个简单的日历组件,你可以使用`JCalendar`控件或者`javax.swing.JMonthChooser`。以下是使用`JMonthChooser`的一个基本示例:
```java
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class CalendarExample extends JFrame {
private JMonthChooser monthChooser;
public CalendarExample() {
setTitle("Swing Java Calendar");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 创建并添加月选择器
monthChooser = new JMonthChooser();
monthChooser.setShowWeekNumbers(true); // 显示星期几
// 添加动作监听器处理日期选择
ActionListener listener = e -> {
Calendar calendar = monthChooser.getCalendar();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1; // 因为月份从0开始计数
int day = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
JOptionPane.showMessageDialog(this, "Selected date: " + month + "/" + day + "/" + year);
};
monthChooser.addActionListener(listener);
// 将月选择器添加到窗口中
add(monthChooser);
setLocationRelativeTo(null); // 居中显示
setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> new CalendarExample());
}
}
```
在这个例子中,用户可以选择月份,然后会弹出一个消息框显示所选日期。运行这个程序后,你会看到一个可以交互的日历。
阅读全文