首页 > 代码库 > JAVA的继承,构造函数,窗体
JAVA的继承,构造函数,窗体
1 import java.awt.*; 2 import javax.swing.*; 3 import javax.swing.JFrame; 4 import java.awt.event.WindowListener; 5 import java.awt.event.WindowEvent; 6 import java.awt.event.WindowAdapter; 7 import java.awt.event.ActionListener; 8 import java.awt.event.ActionEvent; 9 class QQ extends JFrame //继承JFrame 10 { 11 QQ() //构造函数 12 { 13 display();//调用display()函数 14 } 15 JButton btn1; 16 JButton btn2; 17 JTextField jtf1; 18 JPasswordField jpf1; //密码文本 19 class MyListener extends WindowAdapter //适配器 是扩展 不需要覆盖WindowAdapter中的所有方法 功能代码较多 20 { 21 public void windowClosing(WindowEvent e) 22 { 23 System.out.println("windowClosing"); 24 int res = JOptionPane.showConfirmDialog(null,"是否退出程序应用","提示", JOptionPane.YES_NO_OPTION); //弹出消息框 25 System.out.println("res =" + res); 26 if(res == 0) 27 { 28 System.out.println("退出"); 29 System.exit(1);// 退出 30 System.out.println("退出1"); //不输出 因为exit先执行 31 } 32 else if(res == 1) 33 { 34 System.out.println("不退出"); 35 setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); 36 //System.exit(1);// 退出 37 // 不退出 38 } 39 } 40 } 41 class BtnAction implements ActionListener //btn事件 42 { 43 public void actionPerformed(ActionEvent e) 44 { 45 System.out.println("actionPerformed"); 46 if(jtf1.getText().equals("jk") && jpf1.getText().equals("jk")) 47 { 48 System.out.println("OK"); 49 dispose(); 50 (new JFrame("主窗口")).setVisible(true); 51 } 52 else 53 { 54 System.out.println("Error"); 55 JOptionPane.showConfirmDialog(null,"密码错误","提示", JOptionPane.DEFAULT_OPTION); 56 } 57 } 58 } 59 class BtnAction2 implements ActionListener //内部类 60 { 61 public void actionPerformed(ActionEvent e) 62 { 63 Object o = e.getSource(); 64 JButton b = (JButton)o; //强制类型转换 65 System.out.println("芝麻开门" + btn2.getText()); //类的成员/函数,可以在内部类中使用 66 67 if(b == btn2) //b.getSource == "注册" 68 { 69 jtf1.setText(""); 70 jpf1.setText(""); 71 } 72 } 73 } 74 public void display() 75 { 76 //JFrame frm = new JFrame(); //窗体 77 ImageIcon img1 = new ImageIcon("timg.gif"); //背景 78 JLabel background1 = new JLabel(img1); 79 this.getLayeredPane().add(background1, new Integer(Integer.MIN_VALUE)); 80 //background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight()); 81 background1.setBounds(0, 0, 425, 450); 82 ImageIcon img2 = new ImageIcon("33.gif"); 83 JLabel background2 = new JLabel(img2); 84 this.getLayeredPane().add(background2, new Integer(Integer.MIN_VALUE)); 85 background2.setBounds(0, 0, img2.getIconWidth(), img2.getIconHeight()); 86 87 jtf1 = new JTextField(30); //文本 88 //jtf1.setColumns(10); 89 jtf1.setSize(200,35); 90 jtf1.setLocation(130,130); 91 jpf1 = new JPasswordField(30); //密码文本 92 //jpf1.setEchoChar(‘#‘); 设置密码文本内容 93 jpf1.setSize(200,35); 94 jpf1.setLocation(130,180); 95 96 JLabel lab1 = new JLabel("账号:"); //标题 97 Font fnt = new Font("Serief",Font.ITALIC+Font.BOLD,15); 98 lab1.setFont(fnt); 99 lab1.setBackground(Color.BLUE); //label的背景颜色 100 lab1.setOpaque(true); //label是否透明 101 lab1.setForeground(Color.YELLOW); //label前景色 102 JLabel lab2 = new JLabel("密码:"); 103 lab1.setSize(50,30); 104 lab2.setSize(50,30); 105 lab1.setLocation(70,130); 106 lab2.setLocation(70,180); 107 btn1 = new JButton("登录"); 108 btn1.setBounds(100,230,180,50); 109 Image im1 = (new ImageIcon("QQ.png")).getImage(); //图标 110 this.setIconImage(im1); 111 //ImageIcon im2 = new ImageIcon("77.png"); //图标 112 ImageIcon im2 = new ImageIcon("./77.png"); 113 btn1.setIcon(im2); 114 this.setLayout(null); //布局--绝对布局 115 MyListener ltn = new MyListener(); //监听 116 this.addWindowListener(ltn); 117 BtnAction act = new BtnAction(); //btn事件 118 btn1.addActionListener(act); 119 btn2 = new JButton("重置"); 120 btn2.setBounds(300,230,100,50); 121 BtnAction2 act2 = new BtnAction2(); 122 btn2.addActionListener(act2); 123 //frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 124 this.setSize(425,325); 125 this.setLocation(700,500); 126 this.setTitle("QQ登录"); 127 this.setResizable(false); 128 this.add(btn1); 129 this.add(btn2); 130 this.add(lab1); 131 this.add(lab2); 132 this.add(jpf1); 133 this.add(jtf1); 134 this.add(background1); 135 this.add(background2); 136 this.setVisible(true); 137 System.out.println("OK"); 138 } 139 public static void main(String[] args) 140 { 141 QQ Event1 = new QQ(); 142 System.out.println("OK"); 143 } 144 }
JAVA的继承,构造函数,窗体
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。