需求:把按钮添加到窗体,并对按钮添加一个点击事件。
  A:创建窗体对象
  B:创建按钮对象
  C:把按钮添加到窗体
  D:窗体显示

注意:这里对按钮添加点击事件,同样使用监听器。

    但是,这里的按钮是组件,所以不能使用  窗体侦听器WindowListener()

    要使用 组件侦听器 ActionListener() 。

    同时,由于 ActionListener() 只有一个构造方法,所以不需要调用适配器。

代码:

 public class FrameDemo3 {

     public static void main(String[] args) {
// 创建窗体对象 局部内部类访问局部变量,得使该变量为静态 final
final Frame f = new Frame("添加按钮");
  
// 设置窗体属性
f.setBounds(300, 300, 400, 400); // 设置窗体的布局为流水布局
f.setLayout(new FlowLayout()); // 创建按钮对象
Button b = new Button("点击"); // 设置按钮尺寸
b.setBounds(10, 20, 20, 20); // 添加按钮到窗体中
f.add(b); // 创建窗口关闭监听
f.addWindowListener(new WindowAdapter() {// 适配器
public void windowClosing(WindowEvent e) {
System.exit(0);
} }); // 创建按钮点击的监听事件
// 用于接收操作事件的侦听器接口 ActionListener
b.addActionListener(new ActionListener() {
//由于操作时间的侦听器接口只有1个构造方法,所以直接使用它,不需要使用适配器
public void actionPerformed(ActionEvent e) {
//每点击一次“点击”按钮,就会出现一个“再点啊”按钮
Button bu = new Button("再点啊");
bu.setSize(20,20);
f.add(bu); //局部内部类中访问局部变量,这里在外面的f添加final
f.setVisible(true);
}
});
// 使窗体显示
f.setVisible(true);
} }

java 24 - 3 GUI之添加按钮的更多相关文章

  1. GUI编程笔记(java)06:GUI窗体添加按钮并对按钮添加事件案例

    1.需求:把按钮添加到窗体,并对按钮添加一个点击事件. 步骤: (1)创建窗体对象(2)创建按钮对象(3)把按钮添加到窗体(4)窗体显示 2.编写程序思路: 窗体布局:窗体中组件的排列方式  布局分类 ...

  2. java 24 - 5 GUI之 鼠标移动改变窗体背景颜色

    需求: 创建一个可改变背景颜色的窗口,鼠标移动到按钮上,窗口背景就会改变成特定的颜色 步骤: (大致上) 创建窗口对象 创建按钮对象 添加按钮到窗口中 设置窗口关闭监听事件 设置鼠标进入按钮区域的监听 ...

  3. Java Hello World例子和添加按钮事件与功能

    新建android工程,然后默认“下一步”即可完成创建: 2.添加Button 3.在src的MainActivity.java添加以下红色代码 import android.support.v7.a ...

  4. java 24 - 10 GUI 之 四则预算的数据校验

    我想要在校验的过程中,如果输入到操作数中的不是数字,则弹出提醒框: 类 JOptionPane  有助于方便地弹出要求用户提供值或向其发出通知的标准对话框 方法名 描述 showConfirmDial ...

  5. java 24 - 9 GUI 之 给窗体换图标、设置启动在屏幕中间、更换皮肤

    A.首先更改窗体左上角的图片 步骤一: 创建3个包,分别建立1个类 第一个是窗体的包,窗体类:设置窗体的主要布置和功能 第二个是资源包,图片:把想要改的图案拉进来 第三个是UI界面包,UI界面设计类: ...

  6. java 24 - 8 GUI之创建四则运算计算器(未校验版)

    这个是用NetBeans软件制作的,因为这个软件制作GUI任务比较方便 通过拖拽控件生成的窗体:(红色的名称是更改后的控件名称) 拉拽好布局后,要进行的步骤: A:更改想要进行操作的控件的名称(右键控 ...

  7. java 24 - 7 GUI之 创建多级菜单窗体

    需求: 创建多级菜单 步骤: A:创建窗体对象(并设置属性和布局) B:创建菜单栏 C:创建菜单和子菜单 D:逐步添加菜单(子菜单添加到菜单中,菜单添加到菜单栏中) E:窗体中设置菜单栏(菜单栏并不是 ...

  8. java 24 - 4 GUI之创建数据转移窗口

    需求: 把文本框中的数据,通过点击按钮,转移到文本域中.  同时清空文本框中的数据 代码:(步骤都注释了) public class FrameDemo4 { public static void m ...

  9. java 24 - 1 GUI之GUI的概述和基本代码

    GUI(图形用户界面) GUI和CLI的区别: GUI Graphical User Interface(图形用户接口). 用图形的方式,来显示计算机操作的界面,这样更方便更直观. CLI Comma ...

随机推荐

  1. DataGridView 设置某个列为只能为数字

    public DataGridViewTextBoxEditingControl CellEdit = null; int idx = 1; private void dataGridView1_Ed ...

  2. Understanding theory (1)

    Source: verysmartbrothas.com It has been confusing since my first day as a PhD student about theory ...

  3. [Android]Android系统启动流程源码分析

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5013863.html Android系统启动流程源码分析 首先 ...

  4. iOS9 HTTP 通信报错解决方案

    UIWebView *myview = [[UIWebView alloc] initWithFrame:CGRectMake(, , [UIScreen mainScreen].bounds.siz ...

  5. UWP开发中两种网络图片缓存方法

    通常情况下,我们的程序需要从服务器读取图片,但如果需要不止一次读取某一张图片的话,就需要做本地缓存了,这样既为用户省一点流量,又能显得你的APP很快. 假如你已经知道了某一张图片的地址,那么第一件事就 ...

  6. iOS xcode使用断点追踪后,无法nslog,无法po对应的值 方法小结

    今天使用断点追踪后,发现无法正常nslog,使用po也无法打印出对应的值,进入断点显示的值都为nil,网上查了一下,我总结出了以下几个可行方法: 法一:项目根目录->PROGECT->Bu ...

  7. 使用Android Annotations开发

    使用Android Annotations框架gradle配置1.修改Module下的build.gradle apply plugin: 'com.android.application' appl ...

  8. SQLite3的基本使用

    |SQLite3简介  SQLite3只是一个轻型的嵌入式数据库引擎,占用资源非常低,处理速度比Mysql还快,专门用于移动设备上进行适量的数据存取,它只是一个文件,不需要服务器进程. 常用术语:表( ...

  9. Java基础知识学习(六)

    多线程 先了解线程的概念 多线程需要注意的地方 优先级.线程同步.消息传递.数据共享.死锁等 Java线程类 Thread,实现接口 Runnable Thread常用方法 getName 获得线程名 ...

  10. Second glance in Go

    Github上的"the way to Go"翻譯有時候真讓人搞不懂,我經常會暈,比如 如果需要申明一个在外部定义的函数,你只需要给出函数名与函数签名,不需要给出函数体: func ...