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. idea中导入githup项目

    转载大神: https://blog.csdn.net/m0_37630602/article/details/69950528

  2. VS文档自动生成

    VS2008文档自动生成 (发现,Sandcastle主要是用于C#项目.里面的注释都是XML格式的.不太适合VC的.最终还是得用Doxygen) 一.Sandcastle简介: Sandcastle ...

  3. Java文件与io——装饰者模式

    意图: 动态地给一个对象添加一些额外的职责.就增加功能来说,Decorator模式相比于生成子类更为灵活.该模式以对客户端透明的方式扩展对象的功能. 适用环境 在不影响其他对象的情况下,以动态.透明的 ...

  4. AssetDatabase的方法总结

    AssetDatabase的方法总结 1.AssetDatabase.FindAssets public static string[] FindAssets(string filter);publi ...

  5. VirtualBox 在Centos 7 中安装增强功能 (共享文件夹)

    1.分配光驱 2.安装相关依赖包 yum install -y bzip2 gcc gcc-devel gcc-c++ gcc-c++-devel make kernel-d 3.创建临时文件夹 mk ...

  6. SpringBoot | 第三十七章:集成Jasypt实现配置项加密

    前言 近期在进行项目安全方面评审时,质量管理部门有提出需要对配置文件中的敏高文件进行加密处理,避免了信息泄露问题.想想前段时间某公司上传github时,把相应的生产数据库明文密码也一并上传了,导致了相 ...

  7. <邮件的反垃圾反病毒>

    本章——发送接收邮件的工具为雷鸟 安装 # yum install dovecot-mysql.x86_64 dovecot.x86_64 -y 编辑文件 vim 10-mail.conf mail_ ...

  8. SQLServer2008 开启远程连接

    关闭防火墙 基本的设置可以参考下面的链接: http://wenku.baidu.com/link?url=qjZKZCCoa5T3EGd_rqSjl6Tuhb1wYjIHyXri630QxuAIKu ...

  9. CentOS6.5 环境安装配置

    一.GO环境配置 1.运行命令进入/usr/local/src目录:cd /usr/local/src 2.下载安装包:运行wget --no-check-certificate https://st ...

  10. python随笔---录入月份的值,输出对应的季节

    首先获取一个输入,加判断,输入对应的月份,季节判定根据气象划分法(气象划分法:在气象部门,通常以阳历3-5月为春季,6-8月为夏季,9-11月为秋季,12月-来年2月为冬季,并且常常把1.4.7.10 ...