import java.awt.Color;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import javax.swing.JFrame;
public class MyFrame {
public static void main(String[] args) {
JFrame frame = new JFrame("我的第一个Frame");//标题
frame.setSize(500 , 1000);//宽和高
frame.getContentPane().setBackground(Color.RED);//颜色
frame.setVisible(true);
BufferedReader intemp = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Press return key to exit.");
try{
String s = intemp.readLine();
} catch(IOException e){
System.out.println("IOException");
}
System.exit(0);//退出
}//main 结束
}
import java.awt.Color;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class FrameWithPanelTest {
public static void main(String[] args) {
JFrame frame = new JFrame("My Frame");
frame.setSize(500 , 500);
frame.getContentPane().setBackground(Color.BLACK);
frame.setVisible(true);
JPanel contentPane = new JPanel();
contentPane.setSize(100 , 100);
contentPane.setBackground(Color.yellow);
frame.add(contentPane);
frame.setLayout(null); //不加上这一句设置布局,contentPanel会铺满整个frame
BufferedReader intemp = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Press return key to exit.");
try{
String s = intemp.readLine();
} catch(IOException e){
System.out.println("IOException");
}
System.exit(0);
}
}
package classroom;
//public class Thread extends Object implements Runnable
import java.awt.Color;
import java.awt.FlowLayout;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class FrameWithPanelTest {
public static void main(String[] args) {
JFrame frame = new JFrame("My Frame");
frame.setSize(500 , 500);
frame.getContentPane().setBackground(Color.BLACK);
frame.setLayout(new FlowLayout(FlowLayout.CENTER , 50 , 50)); //为JFrame顶层容器设置FlowLayout布局管理器
JPanel contentPane = new JPanel();
contentPane.setSize(100 , 100);
//内部按钮对齐方式,水平和垂直间距
contentPane.setLayout(new FlowLayout(FlowLayout.CENTER , 50 , 50)); //为Japnel设置布局管理器
contentPane.setBackground(Color.yellow);
JButton btn1 , btn2 , btn3 ; //定义3个按钮
btn1 = new JButton("打开");
btn2 = new JButton("关闭");
btn3 = new JButton("返回");
contentPane.add(btn1);
contentPane.add(btn2);
contentPane.add(btn3);
frame.add(contentPane);
frame.setVisible(true); //显示JFrame
BufferedReader intemp = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Press return key to exit.");
try{
String s = intemp.readLine();
} catch(IOException e){
System.out.println("IOException");
}
System.exit(0);
}
}
package classroom;
//public class Thread extends Object implements Runnable
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
//鼠标及按键
public class MouseControl implements MouseMotionListener , KeyListener{
private JFrame frame;
private JLabel tf;
String ch = ""; //放置待显示的字符
public static void main(String[] args){
MouseControl two = new MouseControl();
two.go();
}
private void go() {
frame = new JFrame("鼠标按键测试");
Container contentPane = frame.getContentPane();
contentPane.add(new JLabel("get mouse and keyboard event") , BorderLayout.NORTH);
tf = new JLabel();
contentPane.add(tf, BorderLayout.SOUTH);
//注册监听程序
frame.addMouseMotionListener(this);
frame.addKeyListener(this);
frame.setSize(300 , 300);
frame.setVisible(true);
}
//接下来为实现接口中的方法
@Override
public void keyTyped(KeyEvent e) { //顺序 keypress keytype keyrelease
// TODO Auto-generated method stub
System.out.println("2");
int charcode = e.getKeyCode();
ch = "有键按下2";
if(charcode == KeyEvent.VK_SHIFT) {ch = "shift2";}
if(charcode == KeyEvent.VK_CONTROL) ch = "control2";
}
@Override
public void keyPressed(KeyEvent e) { //看不到显示,因为keytype覆盖了
// TODO Auto-generated method stub
System.out.println("1");
int charcode = e.getKeyCode();
ch = "有键按下1";
if(charcode == KeyEvent.VK_SHIFT) ch = "shift1";
if(charcode == KeyEvent.VK_CONTROL) ch = "control1";
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
//ch = "有键松开";
System.out.println("3");
}
@Override
public void mouseDragged(MouseEvent e) { //按住鼠标拖动才会调用
// TODO Auto-generated method stub
String s = "鼠标拖动的坐标: X =" +e.getX() + " Y =" + e.getY() + " KEY:" + ch;
tf.setText(s);
}
@Override
public void mouseMoved(MouseEvent e) {
// TODO Auto-generated method stub
String s = "鼠标移动时的坐标: X =" +e.getX() + " Y =" + e.getY() + " KEY:" + ch;
tf.setText(s);
}
}