请编写图像界面程序,用户在第一文本行输入数字,有三个按钮,分别是计算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. 重读《学习JavaScript数据结构与算法-第三版》- 第4章 栈

    定场诗 金山竹影几千秋,云索高飞水自流: 万里长江飘玉带,一轮银月滚金球. 远自湖北三千里,近到江南十六州: 美景一时观不透,天缘有分画中游. 前言 本章是重读<学习JavaScript数据结构 ...

  2. loging日志的使用

    2.日志: 记住怎么使用就好了 自己定义日志开始 import logging logger = logging.getLogger() # 创建一个logger fh = logging.FileH ...

  3. Windows Server2008 监控服务器性能

    下面学习Windows Server2008监控服务器性能包括 日志管理,归档日志,日志排错,怎么配置计算机以转发和收集事件,使用任务管理监控内存和CPU的使用,查看程序内存使用,查看程序CPU使用, ...

  4. DotNetCore 3.0 助力 WPF本地化

    概览 随着我们的应用程序越来越受欢迎,我们的下一步将要开发多语言功能.方便越来越多的国家使用我们中国的应用程序, 基于 WPF 本地化,我们很多时候使用的是系统资源文件,可是动态切换本地化,就比较麻烦 ...

  5. 关于js-xlsx的使用

    写在前头,本人是名Java开发人员,偶尔在前端打打酱油,写出的代码或许存在问题,请路过的大神一一指正,不吝感激. 最近公司准备做一些关于Excel 数据导入和导出相关需求,之前有在开源社区看到说比起纯 ...

  6. listary的使用心得

    1.关键字里面的 web 不仅仅可以打开网页也可以打开电脑上的应用程序. 2.但是呢,有时候虽然 URL 指向了正确的 exe 但是却打不开相应的软件.这是为什么呢?(有其他方法可以打开) 我在这里提 ...

  7. Java进程故障排查

    故障分析 # 导致系统不可用情况(频率较大): 1)代码中某个位置读取数据量较大,导致系统内存耗尽,进而出现Full GC次数过多,系统缓慢: 2)代码中有比较消耗CPU的操作,导致CPU过高,系统运 ...

  8. 【JVM从小白学成大佬】开篇

    JVM的重要性毋庸置疑,可以毫不夸张的说Java虚拟机是整个Java平台的基石. JVM方面的知识,也一直是BAT等大厂面试考核的重点.特别是JVM调优,故障排查性能调优,你知道该从哪些方面入手吗? ...

  9. python 07 数据类型

    目录 1. 基础数据类型填充 1.str:(不可变) 2. list: 3. tuple: 4. dict: 5. set: 6. bool: 7. 数据类型之间转换 2.删除列表/字典的代码坑: 3 ...

  10. net core天马行空系列: 泛型仓储和声明式事物实现最优雅的crud操作

    系列目录 1.net core天马行空系列:原生DI+AOP实现spring boot注解式编程 哈哈哈哈,大家好,我就是那个高产似母猪的三合,长久以来,我一直在思考,如何才能实现高效而简洁的仓储模式 ...