NJUPT JAVA语言 综合图形界面程序设计

一、 实验目的和要求

学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法。

通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法。

实验内容:

设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换后的结果。

附:程序使用的人民币外汇牌价参考

每100元美元等值买入人民币数:619.72 (2015/5/23 数据)

二、实验代码

package think;

import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class java_exp_01rmb {

	public static void main(String[] args) {
		JFrame frame = new JFrame("人民币转换成美元");
		frame.setResizable(false);//固定大小

		JPanel panel = new JPanel();
		panel.setBackground(new Color(250,250,250));
		panel.setLayout(new GridLayout(5,1,10,10));

		JLabel text1 = new JLabel("人民币:");
		JLabel text2 = new JLabel("美元:");
		JTextField rmbInput = new JTextField("");
		JTextField dollarOutput = new JTextField("");
		JButton bt = new JButton("转换");

		frame.setBounds(300, 300, 210, 250);
		panel.setBounds(0, 0, 200, 200);

		panel.add(text1);
		panel.add(rmbInput);
		panel.add(text2);
		panel.add(dollarOutput);
		panel.add(bt);

		frame.add(panel);
		frame.setVisible(true);

		bt.addActionListener(new ActionListener() {

			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				double temp;
				JButton bt = (JButton) e.getSource();
				 try{
					 temp = Double.parseDouble(rmbInput.getText());
					 dollarOutput.setText(""+temp/6.1972);
				 } catch(NumberFormatException n)
				 {
				    	dollarOutput.setText("你输入的金额错误!");
				 }

			}
		});
	}

}

三、界面

    

四、小结

整体的思路:

* 布局——设置一个swing顶层容器,再设置一个通用容器jpanel,采用gridlayout布局。布局里用五个组件,jpanel和jtextfield和一个jbutton。之后再采用一个监听器监听一下button按钮。

遇到的问题和解决的方法:

* 一开始没有设置布局为GridLayout,直接用label默认的布局。虽然设置了setbounds但是不能按照理想的位置输出。后来百度看例子+看书,采用了GridLayout布局。耗时大概一小时10分钟。

* 在获取textfield的组件里的输入内容的时候,由于gettext的返回值是string,所以需要转换成double,之前没有做过这方面的内容,所以百度了一下看了例子。

*  settext中输出的形式需要注意,不可以直接给一个double类型的数据,但是可以连接在字符串之后输出。

* 优化了程序:对输入类型进行了控制,如果输入的不是数字会有异常输出。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-01 04:57:59

NJUPT JAVA语言 综合图形界面程序设计的相关文章

南邮JAVA程序设计实验1 综合图形界面程序设计

南邮JAVA程序设计实验1  综合图形界面程序设计 实验目的: 学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法.通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法. 实验内容: 设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换后的结果.(每100美元等值买入人民币数:619.72) 实验代码: import java.awt.*; import java.awt.event.*; import java.math.*

java实验1:综合图形界面程序设计

 题目1: 综合图形界面程序设计 实验目的和要求:学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法.通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法. 实验内容:设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换后的结果. 附:程序使用的人民币外汇牌价参考 每100元美元等值买入人民币数:617.00 (参考数据) 代码: import java.awt.*; import java.awt.event.*; impo

JAVA简单Swing图形界面应用示例

package org.rui.hello; import javax.swing.JFrame; /** * 简单的swing窗口 * @author lenovo * */ public class HelloSwing { public static void main(String[] args) { JFrame frame=new JFrame("hello Swing"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLO

Java中的图形界面编程

前言 正文 Java中的图形界面编程 AWT/Swing AWT(Abstract Window ToolKits,抽象窗口工具集) 1.容器类:用来存储组件,实现容器布局 2.组件类:实现界面的一些特定功能 一个容器可以包涵多个组件,组件必须存放在容器中 3.布局管理器:实现容器的布局设置 4.图形类:包括一些基本图形 Swing是AWT的一个轻量级框架 java.lang.Object java.awt.Component java.awt.Container java.awt.Window

Java语言核心技术之基本程序设计

Java语言核心技术之基本程序设计 Java语言核心技术 2.1 标识符和关键字 标识符是在程序开发时给包,类.接口.注解,变量,方法命名的字符序列. 标识符在命名时需要遵守相关的命名规则和命名规范: 标识符的命名规则: 标识符不能是Java的关键字和保留字,关键字是Java中被赋予赋予特殊含义的单词,例如public static void等等.保留字是现有Java版本尚未使用,但是未来的Java版本可能会做关键字使用的单词,例如goto,const.但是可以包含关键字,保留字. 标识符可以由

NJUPT JAVA语言 流处理程序设计

一. 实验目的和要求 实验目的和要求:要求学生能在学习和理解课堂学习内容中JAVA流编程理论的基础上,学习并逐步掌握JAVA流程序的编写和调试,学习根据处理需求对不同流的正确选择使用和组合使用方法. 实验内容:设计和编写一个程序从键盘读入一行字符串,将其写入一个文本文件中,再编写另一个程序从文本文件中读入字符串并在命令行窗口显示出来. 二.实验代码 写入文件 package think; import java.io.BufferedReader; import java.io.Buffered

Go与GUI——GO语言的图形界面Walk

GO没有原生的界面库,所以不能直接用来写GUI界面.但最近互联网上已经涌现出不少成熟.好用的第三方界面库.使用它们,就同样可以写出同C#.C++的界面.而且效率还更胜一筹. 关于Walk界面库(官方介绍): Walk是一个写给Golang的Window应用程序库套件,它主要用于桌面GUI的开发,但也有更多的东西. Part One:安装Walk 在浏览这部分前,请确定已经配置安装完毕go语言的环境.如果没有,可以参考go官网的Install帮助.另外,注意:这个Walk库只能运行在Go 1.1.

NJUPT JAVA语言 小应用程序Applet设计

一. 实验目的和要求 要求学生能在学习和理解课堂学习内容中JAVA小应用程序的基础上,通过实验,培养学生将JAVA小应用程序相关知识点(包括JAVA Applet和低级事件处理模型)有机结合,设计基于WEB浏览器的小应用程序的能力. 实验内容: 设计和编写一个可以用鼠标操作的Applet小应用程序和相应的HTML页面,观察Applet的执行过程,测试程序鼠标用户交互操作的效果. 二.实验代码 package think; import java.applet.Applet; import jav

JAVA 图形界面开发基础详解

/*文章中用到的代码只是一部分,需要源码的可通过邮箱联系我 [email protected]*/ 与C的win32一样,JAVA也有自己的图形界面开发,将在此篇博客中对基础部分进行讲解. 1.Java提供的图形界面类有哪些? Java提供了两套图形界面 (1)AWT组建(基础) AWT组件是jdk1.0的时候推出的图形界面类,它是位于java.awt包下的类.   当时在开发AWT组件时,采用的语言是C和C++,并且还调用了操作系统底层的绘图函数来实现AWT组件(我们看到的图形界面实际上画出来