8.1.1 JFrame
JFrame是用来替代AWT包中Frame的,可以实现与Frame相同的功能,包括作为容器容纳其他组件,显示组件等。
[例8-1]
import javax.swing.*;
import java.awt.*;
class JFrameTest extends JFrame{
private JButton button1 = new JButton("button1");
private JButton button2 = new JButton("button2");
public JFrameTest(String title){
super(title);//设置标题
this.setBounds(50,50,200,150);
//获得与JFrame关联的contentPane,contentPane默认的布局管理器是BorderLayout
Container contentPane = this.getContentPane();
contentPane.setLayout(new FlowLayout(5));
contentPane.add(button1);
contentPane.add(button2);
this.setVisible(true);
//设置JFrame对关闭按钮的处理方式
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
public class Test8_1 {
public static void main(String[] args) {
new JFrameTest("JFrame测试");
}
}
程序运行界面如下:
图8-2 例8-1运行界面
利用JFrame实现了与Frame相同的功能,但JFrame与Frame在使用上还是有很大区别的。
(1)两者都可以添加其他组件到窗口中,Frame直接使用add方法添加相应的组件;JFrame则不能直接通过add方法添加组件,每个JFrame都有一个与之关联的内容面板(contentPane),只能针对这个contentPane添加相应组件。
(2)两者都可以设置布局管理器,Frame直接使用setLayout即可设置;JFrame则需先得到其内容面板,对其内容面板设置布局管理器。
(3)Frame要想关闭窗口需要编写相应的事件处理程序(见例7-12),而JFrame则不必编写事件处理程序,只需调用方法setDefaultCloseOperation(int operation),通过设置operation的值来响应用户关闭窗体的操作,该方法的参数operation的值有以下三个。
JFrame.DO_NOTHING_ON_CLOS:什么也不做
JFrame.HIDE_ON_CLOSE:隐藏窗体,这是JFrame的默认选项
JFrame.EXIT_ON_CLOSE:关闭窗体,结束程序
2017年计算机二级考试java章节辅导:容器组件.doc正在阅读:
2017年计算机二级考试java章节辅导:容器组件01-07
2005年重庆大渡口中考生物真题及答案(Word版)06-01
快乐的国庆节日记300字三年级-快乐的国庆节日记800字三篇03-30
内蒙古异地高考需要什么材料,内蒙古异地高考需要什么条件07-06
2019年注册会计师考试试题每日一练(10.17)02-22
中秋节给老师的短信_中秋节给朋友的短信05-02
内蒙古兴安2018考研预报名入口01-23
考后2017年高考文综试卷及答案12-21
[2017年下半年高中语文学科知识与能力真题]2017高中语文知识考点整理:必背古诗词06-01