Java实现简单的日历界面
本文实例为大家分享了Java实现简单日历界面的具体代码,供大家参考,具体内容如下
请使用JFrame、JPanel、JButton、JLabel和不同的布局管理器,实现如下日历视图。
import java.awt.*; import javax.swing.*; public class Main { public static void main(String[] args) { JFrame frame = new JFrame("calendar"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //第一部分 FlowLayout flow = new FlowLayout(FlowLayout.CENTER); flow.setHgap(20); //设置横向间距 //flow.setVgap(10); //设置纵向间距 JPanel paneln = new JPanel(flow); JLabel l1 = new JLabel("2021年 7月"); JButton left1 = new JButton("<<"); JButton left2 = new JButton("<"); JButton right1 = new JButton(">"); JButton right2 = new JButton(">>"); paneln.add(left1); paneln.add(left2); paneln.add(l1); paneln.add(right1); paneln.add(right2); frame.add(paneln, BorderLayout.NORTH); //第一部分 //第二部分 JPanel week = new JPanel(new GridLayout(1,7)); //设置1行7列的格式 JLabel weeknum[] = new JLabel[7]; weeknum[0] = new JLabel("一",JLabel.CENTER); weeknum[1] = new JLabel("二",JLabel.CENTER); weeknum[2] = new JLabel("三",JLabel.CENTER); weeknum[3] = new JLabel("四",JLabel.CENTER); weeknum[4] = new JLabel("五",JLabel.CENTER); weeknum[5] = new JLabel("六",JLabel.CENTER); weeknum[6] = new JLabel("日",JLabel.CENTER); weeknum[6].setPreferredSize(new Dimension(75,75)); //设置单元格大小 weeknum[6].setBorder(BorderFactory.createLineBorder(Color.gray)); //设置显示边框并设计为灰色 week.add(weeknum[6]); for(int i=0;i<6;i++) { weeknum[i].setPreferredSize(new Dimension(75,75)); //设置单元格大小 weeknum[i].setBorder(BorderFactory.createLineBorder(Color.gray)); //设置显示边框并设计为灰色 week.add(weeknum[i]); } frame.add(week,BorderLayout.CENTER); //第二部分 //第三部分 JPanel date = new JPanel(new GridLayout(5,7)); JButton datenum[] = new JButton[35]; int i; Font font = new Font("宋体", Font.ITALIC,12); //设置个别数字字体 for(i=0;i<4;i++) { String arr = ""+(i+27); datenum[i] = new JButton(arr); datenum[i].setFont(font); //实现字体设置 date.add(datenum[i]); datenum[i].setPreferredSize(new Dimension(75,75)); //设置单元格大小 } //添加个别数字日期 for(i=0;i<31;i++) { String arr = ""+(i+1); datenum[i] = new JButton(arr); date.add(datenum[i]); datenum[i].setPreferredSize(new Dimension(75,75)); //设置单元格大小 } //添加正常数字日期 frame.add(date,BorderLayout.SOUTH); //第三部分 frame.pack(); frame.setVisible(true); } }
运行结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
赞 (0)