请编写图像界面程序,用户在第一文本行输入数字,有三个按钮,分别是计算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第二次作业第二题的更多相关文章

  1. Java第二次作业第一题

    编写图形界面程序,在窗体中设置菜单栏,在菜单栏上添加"file"菜单,在文件菜单中添加"new"和"quit"两个菜单项,其中"q ...

  2. 第二次作业 编程题 PAT 1001A+B Format

    Github的object-oriented仓库:1001.A+BFormat(20) 1.解题的思路过程 在之前学习C语言时曾经碰到过类似的将数字转换成字符输出的情况,这道题目要求输出的数字每三个间 ...

  3. OO第二单元作业小结

    前言 转眼已是第九周,第二单元的电梯系列作业已经结束,终于体验了一番多线程电梯之旅. 第一次作业是单电梯的傻瓜调度,虽然是第一次写多线程,但在课程PPT的指引下,写起来还是非常容易:第二次作业是单电梯 ...

  4. OO第二单元作业总结【自我反思与审视】

    第二单元作业的完成史,就是一部心酸的血泪史…… 多线程的出现为我(们)打开一片广阔的天地,我也在这方天地摸爬滚打,不断成长!如果说第一单元之前还对Java语法有所了解的话,那么这单元学习多线程则完全是 ...

  5. PTA第一次作业和第二次作业

    PTA的第一次作业第一题: #include <stdio.h> int main (void) { int grade,i,N ,a=0,b=0,c=0,d=0,e=0; printf( ...

  6. OO第二单元作业——魔鬼电梯

    简介 本单元作业分为三次 第一次作业:第一次作业要实现单部简单电梯,停靠所有楼层,无载客容量,性能分考量电梯运行时间. 第二次作业: 第二次作业实现多部电梯,电梯数量由初始化设定,每部电梯都停靠所有楼 ...

  7. Java第二次作业參考代码

    Java第二次作业參考代码 [程序11] 题目:有1.2.3.4四个数字,能组成多少个互不同样且无反复数字的三位数?都是多少? public class lianxi11 { public stati ...

  8. JAVA第二次作业展示与学习心得

    JAVA第二次作业展示与学习心得 在这一次作业中,我学习了复选框,密码框两种新的组件,并通过一个邮箱登录界面将两种组件运用了起来.具体的使用方法和其他得组件并没有什么大的不同. 另外我通过查阅资料使用 ...

  9. Java第二周作业

    Java第二周作业 本周作业: 参考http://www.cnblogs.com/rocedu/p/7911138.html 学习第二三章视频 参考http://www.cnblogs.com/roc ...

随机推荐

  1. java之异常详解

    一.什么是异常? 异常就是有异于常态,和正常情况不一样,有错误出错.在java中,阻止当前方法或作用域正常运行的情况,称之为异常. 二.异常体系 Java把异常当作对象来处理,并定义一个基类java. ...

  2. PythonI/O进阶学习笔记_1.抽象、面向对象、class/object/type

    前言: 是自己在学习python进阶IO学习视频的时候的理解和笔记,因为很多都是本菜鸟学习时候的自己的理解,有可能理解有误. Content: - 抽象的概念和面向对象的概念?想要大概了解python ...

  3. Java生产者消费者的三种实现

    Java生产者消费者是最基础的线程同步问题,java岗面试中还是很容易遇到的,之前没写过多线程的代码,面试中被问到很尬啊,面完回来恶补下.在网上查到大概有5种生产者消费者的写法,分别如下. 用sync ...

  4. 基于 Vue+Mint-ui 的 Mobile-h5 的项目说明

    Vue作为前端三大框架之一,其已经悄然成为主流,学会用vue相关技术来开发项目会相当轻松. 对于还没学习或者还没用过vue的初学者,基础知识这里不作详解,推荐先去相关官网,学习一下vue相关的基础知识 ...

  5. python 26 反射

    目录 1. 类的反射 1.1 实例对象 1.2 类 1.3 其他模块 -- 其他.py文件 1.4 本模块 -- 当前.py文件 2. 函数与方法的区别 2.1区别的方法: 2.2 总结 3. 特殊的 ...

  6. 持续集成高级篇之Jekins参数传入与常见任务

    系列目录 有的童鞋可能已经发现,PipeLine项目与自由式项目相比,可配置的项少了很多,比如说环境变量定义,所有步骤完成后执行动作,拉git代码库等.其实这些功能并没有缺,而是配置的方式不一样了,以 ...

  7. Apache和Apache Tomcat

    Apache 和 Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML.PHP.JSP.Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置. Apache是web服 ...

  8. 【spring-boot 源码解析】spring-boot 依赖管理

    关键词:spring-boot 依赖管理.spring-boot-dependencies.spring-boot-parent 问题 maven 工程,依赖管理是非常基本又非常重要的功能,现在的工程 ...

  9. vue+vscode+nodejs 开发环境搭建

    nodejs安装配置 1.下载 地址:https://nodejs.org/en/ 2.默认安装 安装完成后,执行npm -v 出现版本号则表示安装成功. 3.配置 在node安装目录下新建两个文件夹 ...

  10. nginx安装错误:c compiler cc is not found

    今天安装软件nginx的时候遇到的报错:c compiler cc is not found 查了下网上的资料,解决方案也不复杂. 先说明下环境: 服务器:CentOS 7 nginx:2.3.1 原 ...