Java 由浅入深GUI编程实战练习(一)
项目简介:
1.实现利用下拉菜单的方式选择发送快捷语句;
2.实现对留言信息内容的置顶处理以及至尾处理;
3.实现清屏处理或现实保留部分留言内容;
运行界面:
代码展示:
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Choice;
import java.awt.Frame;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.Panel;
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 Demo4 { // 测试
public static void main(String[] args) {
MessageBoard mb = new MessageBoard();
mb.go();
}
} class MessageBoard { Frame f;
WindowAdapter w;
TextArea center;
Label la1, la2, la3;
Panel east, south, north;
Button b1, b2, b3, b4;
Choice l1;
TextField t1; // 构造函数
MessageBoard() {
f = new Frame("留言板");
f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
f.setVisible(false);
System.exit(0);
}
});
f.setBounds(0, 0, 600, 400);
f.setLayout(new BorderLayout());
f.setResizable(false); north = new Panel();
south = new Panel();
east = new Panel(); center = new TextArea("留言内容:");
center.setEditable(false); b1 = new Button("清屏");
b2 = new Button("至顶");
b3 = new Button("至尾"); la1 = new Label("留言版");
la2 = new Label("你");
la3 = new Label(" 地说:"); t1 = new TextField(20); b4 = new Button("提交"); l1 = new Choice();
l1.add("微笑 ");
l1.add("生气 ");
l1.add("伤心 "); } public void go() {
f.add(BorderLayout.NORTH, north);
f.add(BorderLayout.SOUTH, south);
f.add(BorderLayout.EAST, east);
f.add(BorderLayout.CENTER, center);
north.add(BorderLayout.CENTER, la1);
south.add(la2);
south.add(l1);
south.add(la3);
south.add(t1);
south.add(b4); east.setLayout(new GridLayout(9, 0, 1, 10));
east.add(b1);
east.add(b2);
east.add(b3);
f.setVisible(true); b4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String text1, text2;
text1 = l1.getSelectedItem();
text2 = t1.getText();
t1.setText(null); if (t1.getText() != "") {
center.append("\n");
center.append(text1);
center.append(text2);
}
}
}); b1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
center.setText("留言内容:");
}
}); b2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
center.requestFocusInWindow();
center.setCaretPosition(8);
}
}); b3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
center.requestFocusInWindow();
center.setCaretPosition(center.getText().length());
}
});
} }
Java 由浅入深GUI编程实战练习(一)的更多相关文章
- Java 由浅入深GUI编程实战练习(二)
一,项目简介 1.利用Java GUI 绘制图像界面,设置整体布局 2.编写一个随机数生成1~100的随机数 3.编写一个验证类,用于验证用户输入值与生成随机数是否相等并记录用户猜测次数,当用户猜测成 ...
- Java 由浅入深GUI编程实战练习(三)
一,項目介紹 1.可以查看年,月,日等功能.能获取今天的日期,并且能够通过下拉年,月的列表. 2.当程序运行时,显示的时间是系统当前时间. 3.可以手动输入时间,确定后系统跳转到制定的时间. 4.提供 ...
- 【Java】GUI编程
GUI编程 前言 某koukou老师的任务罢了,好在狂神老师居然有GUI的课,只能说是有救星了. [狂神说Java]GUI编程入门到游戏实战 最好笑的是,老师要求掌握的居然是14年的知识,就连狂神在上 ...
- 1.JAVA之GUI编程概述
下列内容为本人看毕向东老师java视频教程学习笔记! JAVA GUI图形用户界面编程: Windows 操作系统提供两种操作方式: ...
- 2.JAVA之GUI编程布局
布局管理器 容器中的组件排放方式,就是布局 常见的布局管理器: **************************************************** 1.FlowLayout(流式 ...
- 3.JAVA之GUI编程Frame窗口
创建图形化界面思路: 1.创建frame窗体: 2.对窗体进行基本设置: 比如大小.位置.布局 3.定义组件: 4.将组件通过add方法添加到窗体中: 5.让窗体显示,通过setVisible(tur ...
- 4.JAVA之GUI编程事件监听机制
事件监听机制的特点: 1.事件源 2.事件 3.监听器 4.事件处理 事件源:就是awt包或者swing包中的那些图形用户界面组件.(如:按钮) 事件:每一个事件源都有自己特点有的对应事件和共性事件. ...
- 5.JAVA之GUI编程窗体事件
我们回顾下第三篇时的内容: 在3.JAVA之GUI编程Frame窗口中窗体是无法直接关闭的,想要关闭须进程管理器结束进程方式关掉. 现在我们就来解决下这个问题. ******************* ...
- 6.JAVA之GUI编程Action事件
功能:单击一个按钮实现关闭窗口: import java.awt.*; import java.awt.event.*; public class StudyAction { // 定义该图形所需的组 ...
随机推荐
- oracle登录管理员创建数据库和表空间
登录管理员最高权限账号 cmd输入sqlplus 回车,或者直接打开sqlplus 用户名:sys 密码:sys as sysdba 1.首先,创建(新)用户: create user usernam ...
- 微信小程序发送短信验证码完整实例
微信小程序注册完整实例,发送短信验证码,带60秒倒计时功能,无需服务器端.效果图: 代码: index.wxml <!--index.wxml--> <view class=&quo ...
- Lesson 27 A wet night
Text Late in the afternoon, the boys put up their tent in the middle of a feild. As soon as this was ...
- 超有料丨小白如何成功逆袭为年薪30万的Web安全工程师
今天的文章是一篇超实用的学习指南,尤其是对于即将毕业的学生,新入职场的菜鸟,对Web安全感兴趣的小白,真的非常nice,希望大家能够好好阅读,真的可以让你少走很多弯路,至少年薪30万so easy! ...
- SDL 开发实战(三):使用 SDL 绘制基本图形
在上文 SDL 开发实战(二):SDL 2.0 核心 API 解析 我们讲解了SDL最核心的API,并结合Hello World代码了解了SDL渲染画面的基本原理. 本文我们来讲一下,如何使用SDL的 ...
- Select下拉框使用ajax异步绑定数据
<!--前端样式--> <style> #searchs { width: 200px; position: absolute; border-top: none; margi ...
- [Swift]LeetCode641. 设计循环双端队列 | Design Circular Deque
Design your implementation of the circular double-ended queue (deque). Your implementation should su ...
- Android开发:在Eclipse中配置Android环境
一.文件需要: https://pan.baidu.com/s/1-XCSSPW5JGyPRlvwRVSfmA 提取码:m5t8 NDK过大没有上传在这个文件里. 二.在Eclipse中配置Tools ...
- [Abp 源码分析]十、异常处理
0.简介 Abp 框架本身针对内部抛出异常进行了统一拦截,并且针对不同的异常也会采取不同的处理策略.在 Abp 当中主要提供了以下几种异常类型: 异常类型 描述 AbpException Abp 框架 ...
- 跳槽 & 思维导图
个人博客原文: 跳槽 & 思维导图 今年的冬天有点"冷".给大家来点实在的东西. 不知道大家在跳槽的时候是怎么做的?直接投简历面试?还是准备了一段时间,复习一波知识点后再投 ...