《Java程序设计》第14周实验作业:GUI编程初步

【目的】

1. 掌握图形化WindowBuilder的使用方式。

2. 理解Java中事件机制。

【目标】

1. 掌握Eclipse中安装WindowBuilder的方法。

2. 了解Java中事件机制。

3. 了解GUI中重用控件。

 4. 完成一个GUI作业,作业要求如下。

(1)功能:有一个按钮(JButton)和一个标签(JLabel),当点击 按钮后,能够显示下一张图片。点击图片下载,获得图片样本。

import java.awt.EventQueue;
import java.awt.Image;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;
import javax.swing.JLabel;
import java.awt.Color;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.io.File;
import java.io.IOException;
public class ImgDemo extends JFrame {
	private JPanel contentPane;
	private int idImg = 1;
	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					ImgDemo frame = new ImgDemo();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}
	/**
	 * Create the frame.
	 */
	public ImgDemo() {
		setTitle("\u56FE\u7247\u663E\u793A");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 576, 604);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		final JLabel lblNewLabel = new JLabel("New label");
		lblNewLabel.setBackground(Color.YELLOW);
		lblNewLabel.setForeground(Color.PINK);
		lblNewLabel.setBounds(58, 86, 600, 500);
		contentPane.add(lblNewLabel);
		JButton btnNewButton = new JButton("\u663E\u793A\u4E0B\u4E00\u5F20\u56FE\u7247");
		btnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				ImageIcon icon;
				try {
					// 获取图片的路径
					String strImgFile = "E:/demoPhoto/";
					// 得到图片的完整路径
					strImgFile = strImgFile + String.valueOf(idImg) + ".jpg";
					// 读取图片
					icon = new ImageIcon(ImageIO.read(new File(strImgFile)));

					// 从图表中获取到图片
					Image image = icon.getImage();
					// 缩放图像
					Image smallImage = image.getScaledInstance(400,400,Image.SCALE_FAST);

					//把Image文件转化为ImageIcon
					icon = new ImageIcon(smallImage);
					lblNewLabel.setIcon(icon);
					// 为下一张图片做准备,一共9张图片,显示完第9张后,重新显示第一张
					idImg = idImg+1;
					if(idImg==10)
						idImg = 1;
				} catch (IOException e1) {
					// TODO Auto-generated catch block
					e1.printStackTrace();
				}
			}
		});
		btnNewButton.setBounds(194, 37, 153, 28);
		contentPane.add(btnNewButton);
	}
}

时间: 2024-10-07 20:00:41

《Java程序设计》第14周实验作业:GUI编程初步的相关文章

第14周实验作业:GUI编程初步

import java.awt.EventQueue; import javax.imageio.ImageIO; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import javax.swing.JButton; import javax.swing.JLabel; import java.aw

Java实验5 GUI编程

实验5 GUI编程 一.实验目的 掌握Java Swing 组件的使用方法,理解委托事件处理模型,掌握多种布局方式,掌握窗口菜单和快捷菜单设计方式,设计出具有图形用户界面.能够响应事件的Java应用程序. 二.实验内容 1.程序理解: 事件处理三个步骤 (1)搭建界面 (2)为相应控件定义事件处理类实现相应的事件处理接口并实现相应的事件处理接口函数 (3)注册事件监听器类对象 例: Unicode 字符查询器 (1)搭建界面 public class QueryFrame extends Fra

第16周周四:GUI编程及文件对话框的使用

项目一:<span style="color: rgb(68, 68, 68); font-family: 'Microsoft YaHei UI'; font-size: 14px; line-height: 22px;">了解文件对话框的使用方法,熟悉GUI中事件驱动的核心步骤.</span> package com.liang; import java.awt.FlowLayout; import java.awt.event.ActionEvent; i

201621123063《java程序设计》第14周实验总结

1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结与数据库相关内容. 2. 使用数据库技术改造你的系统 2.1 简述如何使用数据库技术改造你的系统.要建立什么表?截图你的表设计. 图书借阅系统使用数据库存储馆藏图书信息,要建立图书信息表. id作为主键 将图书表从数据库中读出: 数据库图表: 成功读取并放入JTable显示: 2.2 系统中使用到了JDBC中什么关键类? Connection:获得与数据库的连接 DriverManger:驱动管理器,注册驱动 PreparedS

《Java程序设计》第16周周四:GUI编程及文件对话框的使用 计算器

项目三:实验六 图形用户界面(教材P279-280) 目标:完成实验六的内容. 运行代码 import java.awt.Frame; import java.awt.Button; import java.awt.Label; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.awt.FlowLayout; import java.awt.TextField; import

第14篇-JAVA GUI编程

第14篇-JAVA GUI编程 每篇一句 :道路一开始开辟的时候总是存在障碍的 初学心得: 原本下定决心才能开始的事情也变得理所当然 (笔者:JEEP/711)[JAVA笔记 | 时间:2017-04-25| JAVA GUI编程 ] 1.什么是界面 图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面 与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受 2.Java 基础类 JFC 的基本

初次踏上GUI编程之路(有点意思,详细介绍了菜鸟的学习之路)

初次踏上GUI编程之路 —— 我的Qt学习方法及对Qt认识的不断转变 -> 开始接触GUI与开始接触Qt: 话说,我第一次看见“Qt”这一个名词,好像是在CSDN网站的主页上吧,因为CSDN好像在给Qt做宣传,在主页上占了一栏的广告,只是,这时,我还没怎么刻意去留意这个陌生的字眼.在我大二上学期中下期时,即大概是2011年的12月,由于自己刚刚完成了汇编语言的入门学习,正要制订下一个学习目标,所以,又开始找起了资料,同时,也再次开始为自己的就业问题担心,于是,开始搜集一些招聘单位的信息,这时候,

2017-2018-1 20155202 《信息安全系统设计基础》第14周学习总结

2017-2018-1 20155202 <信息安全系统设计基础>第14周学习总结 ==深入理解第11章:网络编程==: 网络编程背景: Internet的应用范围由最早的军事.国防,扩展到美国国内的学术机构,进而迅速覆盖了全球的各个领域,运营性质也由科研.教育为主逐渐转向商业化. 在科学研究中,经常碰到"种瓜得豆"的事情,Internet的出现也正是如此:它的原型是1969年美国国防部远景研究规划局(Advanced Research Projects Agency)为军

(转)面向对象编程初步

1 class Hand: 2 pass 3 class Foot: 4 pass 5 class Trunk: 6 pass 7 class Head: 8 pass 9 10 class Person: 11 def __init__(self,id_num,name,hand,foot,trunk,head): 12 self.id_num=id_num 13 self.name=name 14 self.hand=Hand() 15 self.foot=Foot() 16 self.tr