菜单栏+背景图+系统时间

来源:互联网 发布:中国移动集中优化 编辑:程序博客网 时间:2024/05/29 18:14

窗口以及系统时间:

package shouye; //包名

import java.awt.*;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.swing.*;
import javax.swing.border.BevelBorder;
import javax.xml.crypto.Data;

public class P294_2 extends JFrame implements Runnable {

MyJPanel mg;private JPanel statusBar;private JLabel dataimelabel;private JMenuBar menubar; //菜单变量(栏)private JMenu sysMenu,xyMenu,bMenu,xsMenu;  //列名private JMenuItem mmItem,xyItem,bjItem,scItem,exitItem,xiugaiItem,tjItem,grItem; //列下面的选项ImageIcon[] imgs = {        new ImageIcon("2.jpeg"), new ImageIcon("2.jpeg")        };public P294_2(String account) {    mg = new MyJPanel(false);    this.add(mg);    this.setSize(800,600);    this.setDefaultCloseOperation(EXIT_ON_CLOSE);    this.setTitle("窗口");    double W = Toolkit.getDefaultToolkit()    .getScreenSize().getWidth();    double H = Toolkit.getDefaultToolkit()    .getScreenSize().getHeight();    int x = (int) (W - this.getWidth());    int y = (int) (H - this.getHeight());    this.setLocation(x / 2, y / 2);    createMenu();    //添加菜单函数    this.setVisible(true);    // 启动线程    createStatusBar();    Thread t = new Thread(this);    t.start();    new Thread(new Runnable() {        public void run() {            while (true) {                mg.flag = !mg.flag;                mg.repaint();                try {                    Thread.sleep(2000);                } catch (InterruptedException e) {                    e.printStackTrace();                }            }        }    }).start();}public void createMenu(){    menubar = new JMenuBar();    sysMenu = new JMenu("系统设置");    mmItem = new JMenuItem("密码设置");    xyItem = new JMenuItem("学院设置");    bjItem = new JMenuItem("班级设置");    exitItem = new JMenuItem("退出");    sysMenu.add(mmItem);    sysMenu.add(xyItem);    sysMenu.add(bjItem);    sysMenu.add(exitItem);    xyMenu = new JMenu("学院管理");    xiugaiItem = new JMenuItem("信息修改");    xyMenu.add(xiugaiItem);    bMenu = new JMenu("班级管理");    tjItem = new JMenuItem("添加班级");    scItem = new JMenuItem("删除班级");    bMenu.add(tjItem);    bMenu.add(scItem);    xsMenu = new JMenu("学生管理");    grItem = new JMenuItem("个人信息");    //grItem.addActionListener(this);    xsMenu.add(grItem);    menubar.add(sysMenu);    menubar.add(xyMenu);    menubar.add(bMenu);    menubar.add(xsMenu);    this.setJMenuBar(menubar);//把菜单与窗口关联}public static void main(String[] args) {    new P294_2("");}class MyJPanel extends JPanel {    boolean flag;    int i = 0;    public MyJPanel(boolean flag) {        this.flag = flag;    }    public void paint(Graphics g) {        super.paint(g);        if (flag == false) {            g.drawImage(imgs[i].getImage(), 0, 0, this);        } else {            g.drawImage(imgs[i++].getImage(), 0, 0, this);        }    }}private void createStatusBar() {    statusBar = new JPanel();    dataimelabel = new JLabel();    statusBar.add(dataimelabel);    this.add(statusBar, "South");// 底部    statusBar.setBorder(BorderFactory    .createBevelBorder(BevelBorder.LOWERED));// 边框效果}public void run() {    while (true) {        Date now = new Date();        SimpleDateFormat sd = new SimpleDateFormat(        "yyyy 年 MM 月 dd 日  hh:mm:ss"        );        dataimelabel.setText("系统时间:" + sd.format(now));        try {            Thread.sleep(1000);        } catch (InterruptedException e) {            e.printStackTrace();        }    }}}

运行:

窗口:菜单栏+背景图+系统时间