Java第二次作业第二题
请编写图像界面程序,用户在第一文本行输入数字,有三个按钮,分别是计算2进制,8进制,16进制,点击其中一个按钮,第一个文本行中的数据转换为相应进制的数显示在第二个文本行中。
package naizi;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class TextUi extends JFrame implements ActionListener
{
private JTextField input,output;
private JButton tbutton,ebutton,sbutton;
private JLabel inlabel,outlabel;
TextUi(){//构造方法
super("进制转换");//标题栏
this.setSize(300,150);
this.setLocation(200, 200);
this.dispose();//关闭按钮方法
// this.setVisible(true);//显示界面
this.getContentPane().setLayout(new GridLayout(1,2,5,5));
JPanel lpanel = new JPanel(new GridLayout(4,1,5,5));
JPanel rpanel = new JPanel(new GridLayout(3,1,5,5));
this.getContentPane().add(lpanel);
this.getContentPane().add(rpanel);
inlabel = new JLabel("输入");
outlabel = new JLabel("输出");
input = new JTextField("20");
output = new JTextField();
lpanel.add(inlabel);
lpanel.add(input);
lpanel.add(outlabel);
lpanel.add(output);
tbutton = new JButton("转换为2进制");
ebutton = new JButton("转换为8进制");
sbutton = new JButton("转换为16进制");
tbutton.addActionListener(this);//给按钮注册监听事件
ebutton.addActionListener(this);//给按钮注册监听事件
sbutton.addActionListener(this);//给按钮注册监听事件
rpanel.add(tbutton);
rpanel.add(ebutton);
rpanel.add(sbutton);
this.setVisible(true);//显示界面
}
public static void main(String [] args){
new TextUi();//运行程序窗体
}
public void actionPerformed(ActionEvent e){//按钮单击事件处理方法
String str = input.getText();//获得输入文本行内容
int num = Integer.parseInt(str);//str转换为int
String result = "";
if(e.getSource()==tbutton ){//判断事件源是不是等于tbutton
result = String.valueOf(Integer.toBinaryString(num));//num转换为2进制
}else if(e.getSource()==ebutton ){//判断事件源是不是等于ebutton
result = String.valueOf(Integer.toOctalString(num));//num转换为8进制
} else if(e.getSource()==sbutton ){//判断事件源是不是等于sbutton
result = String.valueOf(Integer.toHexString(num));//num转换为16进制
}
output.setText(result);
}
}
运行结果如下:

图一

图二

图三
Java第二次作业第二题的更多相关文章
- Java第二次作业第一题
编写图形界面程序,在窗体中设置菜单栏,在菜单栏上添加"file"菜单,在文件菜单中添加"new"和"quit"两个菜单项,其中"q ...
- 第二次作业 编程题 PAT 1001A+B Format
Github的object-oriented仓库:1001.A+BFormat(20) 1.解题的思路过程 在之前学习C语言时曾经碰到过类似的将数字转换成字符输出的情况,这道题目要求输出的数字每三个间 ...
- OO第二单元作业小结
前言 转眼已是第九周,第二单元的电梯系列作业已经结束,终于体验了一番多线程电梯之旅. 第一次作业是单电梯的傻瓜调度,虽然是第一次写多线程,但在课程PPT的指引下,写起来还是非常容易:第二次作业是单电梯 ...
- OO第二单元作业总结【自我反思与审视】
第二单元作业的完成史,就是一部心酸的血泪史…… 多线程的出现为我(们)打开一片广阔的天地,我也在这方天地摸爬滚打,不断成长!如果说第一单元之前还对Java语法有所了解的话,那么这单元学习多线程则完全是 ...
- PTA第一次作业和第二次作业
PTA的第一次作业第一题: #include <stdio.h> int main (void) { int grade,i,N ,a=0,b=0,c=0,d=0,e=0; printf( ...
- OO第二单元作业——魔鬼电梯
简介 本单元作业分为三次 第一次作业:第一次作业要实现单部简单电梯,停靠所有楼层,无载客容量,性能分考量电梯运行时间. 第二次作业: 第二次作业实现多部电梯,电梯数量由初始化设定,每部电梯都停靠所有楼 ...
- Java第二次作业參考代码
Java第二次作业參考代码 [程序11] 题目:有1.2.3.4四个数字,能组成多少个互不同样且无反复数字的三位数?都是多少? public class lianxi11 { public stati ...
- JAVA第二次作业展示与学习心得
JAVA第二次作业展示与学习心得 在这一次作业中,我学习了复选框,密码框两种新的组件,并通过一个邮箱登录界面将两种组件运用了起来.具体的使用方法和其他得组件并没有什么大的不同. 另外我通过查阅资料使用 ...
- Java第二周作业
Java第二周作业 本周作业: 参考http://www.cnblogs.com/rocedu/p/7911138.html 学习第二三章视频 参考http://www.cnblogs.com/roc ...
随机推荐
- windows下通过idea连接hadoop和spark集群
###windows下链接hadoop集群 1.假如在linux机器上已经搭建好hadoop集群 2.在windows上把hadoop的压缩包解压到一个没有空格的目录下,比如是D盘根目录 3.配置环境 ...
- centos7 yum搭建lnmp环境及配置wordpress超详细教程
yum安装lnmp环境是最方便,最快捷的一种方法.源码编译安装需要花费大量的人类时间,当然源码编译可以个性化配置一些其它功能.目前来说,yum安装基本满足我们搭建web服务器的需求. 本文是我根据近期 ...
- UI 组件 | Button
最近在与其他自学 Cocos Creator 的小伙伴们交流过程中,发现许多小伙伴对基础组件的应用并不是特别了解,自己在编写游戏的过程中也经常对某个属性或者方法的用法所困扰,而网上也没有比较清晰的用法 ...
- Go-json解码到结构体
废话不多说,直接干就得了,上代码 package main import ( "encoding/json" "fmt" ) type IT struct { ...
- poi使用随笔
HSSFworkbook,XSSFworkbook,SXSSFworkbook区别简述 HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls: XSSFWor ...
- 12-Factor,构建原生软件应用方法论
官方地址:https://12factor.net/zh_cn/ 原则1:一份基准代码,多份部署 这个原则不管对微服务模式还是其他软件开发模式来说都非常基本,所以被列为12原则的第一条,该原则包括如下 ...
- LoRaWAN stack移植笔记(五)__调试1
先废话一小段 在将LoRaWAN的程序移植的过程中,调试发现了很多的问题. 做好记录工作,防止以后再踩坑 移植使用的是LoRaMac-node库,使用的是STM32L151CBT6 MCU,需要要移植 ...
- hbase性能优化,看这篇就够了
HDFS(hdfs-site.xml)相关调整 dfs.datanode.synconclose = true dfs.datanode.synconclose set to false in hdf ...
- LInux ACL权限控制
1.ACL简介 ACL是一种可以实现灵活的权限管理(文件的额外赋权机制)除了文件所有者,所属组和其他人,可以对更多的用户设置权限,这就是访问控制列表(Access Control List) 2.AC ...
- 终于跑通分布式事务框架tcc-transaction的示例项目
1.背景 前段时间在看项目代码的时候,发现有些接口的流程比较长,在各个服务里面都有通过数据库事务保证数据的一致性,但是在上游的controller层并没有对一致性做保证. 网上查了下,还没找到基于Go ...