黑马程序员——图形化界面编程GUI

本文介绍了Java图形化界面GUI编程的基础知识,包括AWT和Swing组件的区别,常用布局管理器如FlowLayout、BorderLayout和GridLayout的使用,以及如何创建和设置窗体。此外,文章还深入讲解了监听器机制,包括窗口、按钮等事件的处理,并通过代码示例展示了如何实现监听器功能。学习GUI编程有助于理解交互式应用的构建,监听器的使用是其核心之一。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

图形华界面编程:

在Java语言中为GUI提供的对象都在java.Awt和javax.Swing两个包中,所以凡是涉及到图像化界面的编程都要首先加上该包。

java.Awt:Abstract Window ToolKit(抽象窗口工具包),需要调用本地系统方法实现功能,属于重量级组件

javax.Swing:完全由Java实现,在AWT基础上建立的,属于轻量级的控件。

Container容器为我们提供了一些常用的组件Window (Frame、Dialog、FileDialog)、

Panel

布局管理:容器中组件该以什么方式排放

常见布局方式:

FlowLayout(从左到右的流式布局)

BorderLayout(边界布局,东南西北中)

GridLayout(网格布局)

GridBagLayout(网格包布局)

最强的布局方式为坐标式布局


建立一个图形化界面步骤:

(1)创建一个Fream窗体

(2)对窗体进行基本设置

(3)定义组件

(4)将组件通过窗体的add()方法加入到窗体中

(5)让窗体显示,通过SetVisable(true);


代码实例:class  AwtDemo

{
public static void main(String[] args) 
{
Frame f=new Frame("第一个窗体");
f.setSize(500,500);
f.setLocation(300,300);
f.setLayout(new FlowLayout());
Button b=new Button("第一个按钮");
f.add(b);
f.addWindowListener(new  WindowAdapter(){
    public  void windowClosing(WindowEvent e) {
        System.out.println("窗口关闭成功"+e.toString());
            System.exit(0); 
 }
public void windowActivated(WindowEvent e){
 System.out.println("窗口激活");

public void windowOpened(WindowEvent e)  { 
  System.out.println("窗口呗打开"); 
 }
}) ;
f.setVisible(true);
System.out.println("Hello World!");
}
}



在图像化界面的另外一个重要的是监听器 

监听器 Listener,涉及到监听机制,常用的监听器一般分为主要分为三类  :键盘的输入、鼠标的点击、窗口的移动

监听机制包括:1,事件源、2,事件、3,监听器、4,事件处理

前三件事在Java中已经定义好了,作为开发着我们需要的就是对监听后的动作进行处理


注意:一般监听器为接口,里面有很多方法,但是我们实际开发中只需要用到其中的一个或几个方法该怎么办??不可能全部复写

我们应该看其有没有子类,因为其子类必定实现其所有的方法,所以我们只需要继承其子类的复习自己需要的方法即可,一般使用匿名内部类。


注意:要把监听器和图形化界面操作分开,这样我们就把监听器单独写在一个方法里面

而且要记得导入Java.aet.event.*;包

监听器使用 的代码实例:

import java.awt.*;
import java.awt.event.*;


class  FrameDemo
{
  private Frame f;
private Button bt;
FrameDemo()
{
init();
}
public void  init(){
f=new Frame("我的窗体");
bt=new Button("按钮1");
f.setBounds(200,100,400,400);
f.setLayout(new FlowLayout());
     f.add(bt);
myEvent();
f.setVisible(true);
}
private void myEvent(){

  f.addWindowListener(new WindowAdapter(){

   public void windowClosing(WindowEvent e){ 
   System.exit(0);
   }
  });
bt.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
    System.out.println("退出!按钮");
System.exit(0);
}
} );  
}
public static void main(String[] args) 
{
new FrameDemo();
}
}


自我学习心得:在对图形化界面的学习中,开始理解以前在学基础部分一直用javac在dos窗口执行的困惑,图形化界面类似于C#的图形化操作,在此阶段的学习中,首选是记住创建图形化界面的步骤,这是基本的操作,操作中也有很多具体细节需要注意,例如窗体的起始位置等,在图像化界面中重中之重的是监听器,因为在现实操作中肯学需要涉及到对图形化界面的手动操作,所以很重要,也要着重理解监听器机制 。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值