void setBounds(x, y, width, height)

设置窗体坐标,窗体大小

import java.awt.Frame;

public class IntegerDemo {
public static void main(String[] args) {
// 创建窗体对象
Frame f = new Frame(); // 设置窗体标题
f.setTitle("HelloWorld"); // // 设置窗体大小
// f.setSize(400, 300);
//
// // 设置窗体位置
// f.setLocation(400, 200); f.setBounds(400, 200, 400, 300); // 设置窗体可见
f.setVisible(true);
}
}

设置窗体可以关闭

import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; public class IntegerDemo {
public static void main(String[] args) {
// 创建窗体对象
Frame frame = new Frame("窗体"); // 设置窗体属性
frame.setBounds(400, 200, 400, 300); // 适配器,设置窗体可以关闭
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}); // 设置窗体可见
frame.setVisible(true);
}
}

对按钮添加事件

import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; /*
* 需求:把按钮添加到窗体,并对按钮添加一个点击事件
* A:创建窗体对象
* B:创建按钮对象
* C:把按钮添加到窗体
* D:窗体显示
* */ public class IntegerDemo {
public static void main(String[] args) {
// A:创建窗体对象
Frame frame = new Frame("添加按钮"); // 设置窗体属性
frame.setBounds(400, 200, 400, 300); // 设置布局为流式布局
frame.setLayout(new FlowLayout()); // B:创建按钮对象
Button button = new Button("快点我啊");
button.setSize(20, 10); // C:把按钮添加到窗体
frame.add(button); // 适配器,设置窗体可以关闭
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}); // 对按钮添加事件
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.out.println("你再点试试");
}
}); // D:窗体显示
frame.setVisible(true);
}
}

文本框、按钮、文本区

对按钮添加事件

数据转移,在文本框输入,并保存在文本区

import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.TextArea;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; public class IntegerDemo {
public static void main(String[] args) {
// 创建窗体对象
Frame frame = new Frame("数据转移");
// 设置窗体属性
frame.setBounds(400, 200, 400, 300);
// 设置布局为流式布局
frame.setLayout(new FlowLayout()); // 创建文本框
final TextField textfield = new TextField(20); // 创建按钮
Button button = new Button("数据转移"); // 创建文本区
final TextArea textarea = new TextArea(10, 40); // 把按钮添加到窗体
frame.add(textfield);
frame.add(button);
frame.add(textarea); // 适配器,设置窗体关闭
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}); // 对按钮添加事件
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 获取文本框的值
String string = textfield.getText().trim();
// 清空数据
textfield.setText("");
// 设置文本框,追加和换行
textarea.append(string + "\r\n");
// 获取光标
textfield.requestFocus();
}
}); // 窗体显示
frame.setVisible(true);
}
}

对按钮添加鼠标的进入事件

对按钮添加鼠标的离开事件

通过鼠标移动到按钮上更改背景颜色

import java.awt.Button;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; public class IntegerDemo {
public static void main(String[] args) {
// 创建窗体对象
Frame frame = new Frame("数据转移");
// 设置窗体属性
frame.setBounds(400, 200, 400, 300);
// 设置布局为流式布局
frame.setLayout(new FlowLayout()); // 创建3个按钮
Button redButton = new Button("红色");
Button greenButton = new Button("绿色");
Button blueButton = new Button("蓝色"); // 添加按钮
frame.add(redButton);
frame.add(greenButton);
frame.add(blueButton); // 适配器,设置窗体关闭
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}); // 对按钮添加动作事件
// redButton.addActionListener(new ActionListener() {
// @Override
// public void actionPerformed(ActionEvent e) {
// frame.setBackground(Color.RED);
// }
// }); // 对按钮添加点击事件
// redButton.addMouseListener(new MouseAdapter() {
// public void mouseClicked(MouseEvent e) {
// frame.setBackground(Color.RED);
// }
// }); // 对按钮添加鼠标的进入事件
redButton.addMouseListener(new MouseAdapter() {
public void mouseEntered(MouseEvent e) {
frame.setBackground(Color.RED);
}
}); greenButton.addMouseListener(new MouseAdapter() {
public void mouseEntered(MouseEvent e) {
frame.setBackground(Color.GREEN);
}
}); blueButton.addMouseListener(new MouseAdapter() {
public void mouseEntered(MouseEvent e) {
frame.setBackground(Color.BLUE);
}
}); // 对按钮添加鼠标的离开事件
redButton.addMouseListener(new MouseAdapter() {
public void mouseExited(MouseEvent e) {
frame.setBackground(Color.WHITE);
}
}); greenButton.addMouseListener(new MouseAdapter() {
public void mouseExited(MouseEvent e) {
frame.setBackground(Color.WHITE);
}
}); blueButton.addMouseListener(new MouseAdapter() {
public void mouseExited(MouseEvent e) {
frame.setBackground(Color.WHITE);
}
}); // 窗体显示
frame.setVisible(true);
}
}

控制在文本框里面只能输入数字字符

import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Label;
import java.awt.TextField;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent; public class IntegerDemo {
public static void main(String[] args) {
// 创建窗体对象
Frame frame = new Frame("不能输入非数字字符");
// 设置窗体属性
frame.setBounds(400, 200, 400, 300);
// 设置布局为流式布局
frame.setLayout(new FlowLayout()); // 创建Label
Label label = new Label("请输入你的Q号,不能是非数字"); TextField textfield = new TextField(40); // 添加按钮
frame.add(label);
frame.add(textfield); // 适配器,设置窗体关闭
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}); textfield.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
// 思路:1获取字符,2判断字符
char ch = e.getKeyChar(); if (ch >= '0' && ch <= '9') { } else {
e.consume();
}
}
}); // 窗体显示
frame.setVisible(true);
}
}

多级菜单

import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.IOException; public class IntegerDemo {
public static void main(String[] args) {
// 创建窗体对象
final Frame frame = new Frame("多级菜单");
final String name = frame.getTitle();
// 设置窗体属性
frame.setBounds(400, 200, 400, 300);
// 设置布局为流式布局
frame.setLayout(new FlowLayout()); // 创建菜单栏
MenuBar menuBar = new MenuBar(); // 创建菜单
Menu menu1 = new Menu("文件");
Menu menu1_1 = new Menu("更改名称"); // 创建菜单项
MenuItem menuItem1 = new MenuItem("好好学习");
MenuItem menuItem2 = new MenuItem("天天向上");
MenuItem menuItem3 = new MenuItem("恢复标题");
MenuItem menuItem4 = new MenuItem("打开记事本");
MenuItem menuItem5 = new MenuItem("退出系统"); // 添加菜单
menu1_1.add(menuItem1);
menu1_1.add(menuItem2);
menu1_1.add(menuItem3); menu1.add(menu1_1);
menu1.add(menuItem4);
menu1.add(menuItem5); menuBar.add(menu1); // 设置菜单项
frame.setMenuBar(menuBar); // 适配器,设置窗体关闭
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}); menuItem1.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
frame.setTitle(menuItem1.getLabel());
}
}); menuItem2.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
frame.setTitle(menuItem1.getLabel());
}
}); menuItem3.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
frame.setTitle(name);
}
}); menuItem4.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
Runtime runTime = Runtime.getRuntime();
try {
runTime.exec("notepad");
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}); menuItem5.addActionListener(new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
System.exit(0);
} }); // 窗体显示
frame.setVisible(true);
}
}

GUI_FlowLayout的更多相关文章

随机推荐

  1. 1rem,1em,1vh,1px含义

    rem:相对于页面根元素<html>元素,通常做法是给html元素设置一个字体大小,然后其他元素的大小就是相对于根元素的大小 em:相对于父元素字体大小,元素的width/height/p ...

  2. iOS手势操作,拖动,轻击,捏合,旋转,长按,自定义(http://www.cnblogs.com/huangjianwu/p/4675648.html)

    1.UIGestureRecognizer 介绍 手势识别在 iOS 中非常重要,他极大地提高了移动设备的使用便捷性. iOS 系统在 3.2 以后,他提供了一些常用的手势(UIGestureReco ...

  3. Java设计模式之——代理设计模式

    1.什么是代理设计模式 所谓代理模式是指客户端并不直接调用实际的对象,而是通过调用代理,来间接的调用实际的对象. 这里举一个栗子:就拿我们平时租房子来举例子,好比租客和房主之间的关系,我们租房子往往不 ...

  4. Centos安装 Apache2.4提示 APR not found的解决办法

    在安装apache2.2.22版本的时候没有任何问题,可直接使用命令编译安装. 但是,在apache 2.4.12版本,./configure 进行配置时, 提示 configure: error: ...

  5. Taro -- 文字左右滚动公告效果

    文字左右滚动公告效果 设置公告的左移距离,不断减小,当左移距离大于公告长度(即公告已移出屏幕),重新循环. <View className='scroll-wrap'> <View ...

  6. 10年前文章_解决parted 编译出错问题

    找到 include/site/i386-linux 文件,修改定义ac_cv_sizeof_off_t 的长度,从原来的4改为8 ac_cv_sizeof_off_t=8 删除 build_dir/ ...

  7. 关于数据库抛出异常:Incorrect string value: '\xE1\x...' for column '字段名' at row 1 问题的解决方法

    打开sql,进行语句编辑 ENGINE=InnoDB DEFAULT CHARSET=utf8;字符集设置utf-8编码

  8. canvas在图片上生成文字

    newImage(text) {                 // 生成图片                 var imageBox = document.getElementById(&quo ...

  9. re模块下的的常用方法

    引入模块: import re 1.查找findall   匹配所有,每一项都是列表中的一个元素 ret=re.findall("\d+","sjkhk172按实际花费9 ...

  10. 1px像素问题(移动端经典问题)

    1.物理像素:移动设备出厂时,不同设备自带的不同像素,也称硬件像素: 逻辑像素:即css中记录的像素 在开发中,为什么移动端CSS里面写了1px,实际上看起来比1px粗:了解设备物理像素和逻辑像素的同 ...