Java使用组件编写窗口实现网络图片显示
作者:rain_web 发布时间:2023-04-14 18:06:04
标签:Java,组件,窗口
这篇文章使用Java组件显示窗口,在通过输入的图片url地址在窗口中显示出来,可作为一个网络图片查看器,感兴趣的可以打包成jar或者.exe文件方便使用,这里我只挂出了源码,效果如下图。
package com.rain.image;
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import javax.swing.*;
//从网络取得图象
public class GetImageDemo extends JFrame{
JTextField jtfUrl; //输入图像地址url
JButton jbGetImage; //取图像按钮
Image image; //获取的图像
Toolkit toolKit; //Toolkit对象,用于获取图像
public GetImageDemo(){
super("网络图片查看器"); //调用父类构造函数
Container container=getContentPane(); //得到容器
jtfUrl=new JTextField(18); //实例化地址输入框
jbGetImage=new JButton("输入图片的URL"); //实例化按钮
container.setLayout(new FlowLayout()); //设置布局管理器
container.add(jtfUrl); //增加组件到容器上
container.add(jbGetImage);
toolKit=getToolkit(); //得到工具包
jbGetImage.addActionListener(new ActionListener(){ //按钮事件处理
public void actionPerformed(ActionEvent ent){
try{
String urlStr=jtfUrl.getText(); //得到图像的URL地址
URL url=new URL(urlStr);
image=toolKit.getImage(url); //获取图像
repaint(); //重绘屏幕
}
catch(MalformedURLException ex){
ex.printStackTrace(); //输出出错信息
}
}
});
setSize(1280,640); //设置窗口尺寸
setVisible(true); //设置窗口可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序
}
public void paint(Graphics g){
super.paint(g);
if (image!=null){
g.drawImage(image,100,70,this); //在组件上绘制图像
}
}
public static void main(String[] args){
new GetImageDemo();
}
}


猜你喜欢
- 1. 异常1.1 try…catch异常处理try catch的异常处理的格式写法 :try{ &nbs
- 使用ViewPager实现屏幕滑动从一个完整的屏幕移动到另一个屏幕的过程被称为屏幕滑动,在安装向导、幻灯片中应用广泛。下面介绍如何利用And
- 1、Spring的事务管理主要包括3个接口TransactionDefinition:封装事务的隔离级别,超时时间,是否为只读事务和事务的传
- 前言说实话,我在 * 工作的时候,就见过Gradle。但是当时我一直不知道这是什么东西。而且 * 工具组的工程师还将其和Android Stud
- 目录前言1、饿汉式(线程安全)⭐2、懒汉式(线程不安全)⭐3、懒汉式(加锁)4、懒汉式(双重校验锁)⭐5、单例模式(静态内部类)6、单例模式
- Spring Boot 2.7.6整合redis与低版本的区别最近在写程序的时候参考了之前写过的一篇文章spring boot整合redis
- 最近chatGPT也是非常的火爆,相信大家都看到了,现在提供一种Java调用chatGPT的方法,我们主要通过两个工具来实现,一就是http
- 1. JNI简介JNI是Java Native Interface的英文缩写,意为Java本地接口。问题来源:由于Java编写底层的应用较难
- 1、打开代码管理器2、打开后就可以看到如下图所示3、复制粘贴该路径,转到该文件夹下新加一个txt文件,把下面的文本复制粘贴<?xml
- 图库在播放幻灯片时,按power键灭屏,然后再亮屏,会发现幻灯片继续在播放,没有显示keyguard。如何在亮屏后显示解锁界面。 修改方法是
- 在使用Gateway 调用一个文件上传服务时 前端传来的File的base64字符串怎么都接受不到 但是用Body方式请求就能接收到后来经过
- 1.数据数据(Data)是外部世界信息的载体, 是能够被计算机识别,加工,存储的。在现实生活中也就是我们的产品原材料。计算机中的数据包括数值
- private void dataGridView1_RowsAdded(object sender, DataGridViewRowsAd
- 本文实例为大家分享了java简单实现斗地主发牌的具体代码,供大家参考,具体内容如下问题:参考斗地主的游戏规则,完成一个发牌的功能(54张牌,
- 背景:最近小组进行一个环境比较恶劣的项目,由于没有真实的测试环境,决定上云,最终选择国外的heroku,折腾半天,其中有一些坑在这里记录下来
- 析构函数用于析构类的实例。备注不能在结构中定义析构函数。只能对类使用析构函数。一个类只能有一个析构函数。无法继承或重载析构函数。无法调用析构
- 在学会了java中io流的使用后,我们对于数组的排序,又多了一种使用方法。大家知道流处理数据的效率是比较理想的,那么在具体操作数组排序上,很
- 线性表是其组成元素间具有线性关系的一种数据结构,对线性表的基本操作主要有,获取元素,设置元素值,遍历,插入,删除,查找,替换,排序等。而线性
- 前言作为Java开发工程师,相信大家对Spring种事务的使用并不陌生。但是你可能只是停留在基础的使用层面上,在遇到一些比较特殊的场景,事务
- 用java实现的登录与注册页面,实现了客户端(浏览器)到服务器(Tomcat)再到后端(servlet程序)数据的交互。这里在注册页面加入了