import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random; import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField; public class RP_Frame2 extends JFrame {
private static final long serialVersionUID = 1L; public RP_Frame2() {
setBounds(200, 200, 500, 300);// 设置窗体大小位置
setTitle("人品计算器");// 设置窗体标题 JPanel pnBasic = new JPanel();// 生成一个大画布
setContentPane(pnBasic);// 放在窗格中
pnBasic.setLayout(new GridLayout(2, 1));// 画布按照两行一列网格布局,行与行列与列间隔5像素
JPanel pnGreen = new JPanel();// 再生成一个小绿画布
JPanel pnYellow = new JPanel();// 再生成一个小黄画布
pnYellow.setBackground(Color.YELLOW);// 画布设置颜色
pnGreen.setBackground(Color.GREEN);// 画布设置颜色
pnBasic.add(pnYellow);
pnBasic.add(pnGreen);
// 下边一行绿色画布增加标签,作为输出
JLabel result = new JLabel();
pnGreen.add(result);
result.setText("输入姓名后, 点击 '测试人品' 按钮, 查看人品值!");
// 上边一行黄色画布重新布局
pnYellow.setLayout(new BorderLayout());
JLabel label = new JLabel();// 生成标签
label.setText("输入姓名");
pnYellow.add(label, BorderLayout.WEST);// 放到Yellow画布左边
label.setBackground(Color.YELLOW);
JTextField text = new JTextField(15);// 生成长度15的文本框
text.setBackground(Color.YELLOW);
pnYellow.add(text, BorderLayout.CENTER);
JButton btn = new JButton();// 生成按钮
btn.setBackground(Color.YELLOW);
pnYellow.add(btn, BorderLayout.EAST);// 放到Yellow画布右边
btn.setText("测试人品");
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Random ran = new Random();
int index = ran.nextInt(101);
if (index >= 90) {
result.setText(text.getText() + " 你的人品值为 " + index + " 等级为 " + "大神");
} else if (index >= 80) {
result.setText(text.getText() + " 你的人品值为 " + index + " 等级为 " + "大牛");
} else if (index >= 60) {
result.setText(text.getText() + " 你的人品值为 " + index + " 等级为 " + "程序猿");
} else if (index >= 40) {
result.setText(text.getText() + " 你的人品值为 " + index + " 等级为 " + "码农");
} else if (index >= 20) {
result.setText(text.getText() + " 你的人品值为 " + index + " 等级为 " + "码畜");
} else {
result.setText(text.getText() + " 你的人品值为 " + index + " 等级为 " + "菜鸟");
}
}
}); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 设置关闭窗体时程序停止运行
setVisible(true);// 设置窗体可见,否则什么都不会显示
} public static void main(String[] args) {
new RP_Frame2();//别忘了生成窗体框架对象
} }

容器类 非容器类 属性类

setTitle("人品计算器");// 设置窗体标题

可以通过

 new RP_Frame2("窗体标题")

然后构造方法中接收

public RP_Frame2(String title) {

然后使用super方法传给父类

super(title);

这种方法也可以设置窗体标题

												

人品计算器 JFrame 窗体软件版 JPanel JTextField JTextArea JButtton JLabel setContentPane Swing包(用户界面工具包)的更多相关文章

  1. Android(java)学习笔记218:开发一个多界面的应用程序之人品计算器的简单实现

    1.开启新的Activity的方法: (1)Intent 意图 (2)intent.setAction("自定义")  记得在清单文件中声明 (3)intent.setData(前 ...

  2. 第13章 Swing程序设计----JFrame窗体

    JFrame窗体是一个容器,它是Swing程序中各个组件的载体,可以将JFrame看作是承载这些Swing组件的容器. 在开发应用程序时可以通过继承java.swing.JFrame类创建一个窗体,在 ...

  3. GUI JFrame窗体介绍:

    GUI JFrame窗体介绍: https://www.cnblogs.com/-ksz/p/3422074.html

  4. Android(java)学习笔记161:开发一个多界面的应用程序之人品计算器的简单实现

    1.开启新的Activity的方法: (1)Intent 意图 (2)intent.setAction("自定义")  记得在清单文件中声明 (3)intent.setData(前 ...

  5. 红米1线刷救砖教程V5版(移动联通适用,线刷包永久有效)

    红米1线刷救砖教程V5版(移动联通适用,线刷包永久有效) 原文来自:http://www.miui.com/thread-1890972-1-1.html?mobile=2 ,加了些自己的经验. (我 ...

  6. atitit.软件开发GUI 布局管理优缺点总结java swing wpf web html c++ qt php asp.net winform

    atitit.软件开发GUI 布局管理优缺点总结java swing wpf web html c++ qt php asp.net winform 1. Absoluti 布局(经常使用) 1 2. ...

  7. Arch Linux 是个 针对 i686 优化的 Linux 发行版(通过可以轻松使用的二进制包系统 - pacman)

    Arch Linux 是个 针对 i686 优化的 Linux 发行版(通过可以轻松使用的二进制包系统 - pacman)Arch 同时也拥有一个类似 ports 的包构建系统(Arch Build ...

  8. PMP(第六版)中的控制账户、规划包、工作包

    PMP(第六版)中的控制账户.规划包.工作包 控制账户是一个管理控制点,在该控制点上,把范围.预算和进度加以整合,并与挣值比较,以测量绩效.控制账户拥有2个或以上的工作包,但每个工作包只与一个控制账户 ...

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

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

随机推荐

  1. php接入图灵机器人

    官网:http://www.tuling123.com 文档:https://www.kancloud.cn/turing/www-tuling123-com/718218 注册账号获取:apikey ...

  2. POJ3974 Palindrome Manacher 最长回文子串模板

    这道题可以$O(nlogn)$,当然也可以$O(n)$做啦$qwq$ $O(nlogn)$的思路是枚举每个回文中心,通过哈希预处理出前缀和后缀哈希值备用,然后二分回文串的长度,具体的就是判断在长度范围 ...

  3. ACM-ICPC 2018 徐州赛区网络预赛 B(dp || 博弈(未完成)

    传送门 题面: In a world where ordinary people cannot reach, a boy named "Koutarou" and a girl n ...

  4. JS——定时器

    定时器在JS中的作用: 1)制作动画.时钟.倒计时 2)异步操作 3)函数缓冲与节流 定时器类型: 1)setTimeout 只执行一次的定时器 2)clearTimeout 关闭只执行一次的定时器 ...

  5. leetcode--Learn one iterative inorder traversal, apply it to multiple tree questions (Java Solution)

    will show you all how to tackle various tree questions using iterative inorder traversal. First one ...

  6. 【Linux】Xshell-Linux常用命令

    (1)命令ls——列出文件 ls -la 给出当前目录下所有文件的一个长列表,包括以句点开头的“隐藏”文件 ls a* 列出当前目录下以字母a开头的所有文件 ls -l *.doc 给出当前目录下以. ...

  7. pygame 使用

    模块概况 display image event key mouse font 类概况 Rect: 返回的矩阵区域(图片) Surface: 可以看做是一个贴图, 它就是来显示的 display(与显 ...

  8. Visual Studio中的引用项目和直接引用DLL文件

    在VS中引用类库时有多种方法,其中用的最多的就是在引用时选择项目选项卡引用本解决方案下的类库项目和选择浏览选项卡直接引用类库DLL文件,实际上这两种引用方式略有不同,今天就为大家总结下. C#本地项目 ...

  9. NOIP2013Day1T3 表示只能过一个点

    •A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有 q 辆货车在运输货物,司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的 ...

  10. [转]c语言宏定义#define的理解与资料整理

    原文地址:http://www.cnblogs.com/haore147/p/3646934.html 1. 利用define来定义 数值宏常量 #define 宏定义是个演技非常高超的替身演员,但也 ...