Java使用组件编写窗口实现网络图片显示

作者:rain_web 时间:2023-04-14 18:06:04 

这篇文章使用Java组件显示窗口,在通过输入的图片url地址在窗口中显示出来,可作为一个网络图片查看器,感兴趣的可以打包成jar或者.exe文件方便使用,这里我只挂出了源码,效果如下图。

Java使用组件编写窗口实现网络图片显示

Java使用组件编写窗口实现网络图片显示


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();
 }
}
标签:Java,组件,窗口
0
投稿

猜你喜欢

  • @RequestBody的使用详解

    2023-03-08 04:17:28
  • MPAndroidChart 自定义图表绘制使用实例

    2023-08-08 13:58:41
  • Spring Boot与RabbitMQ结合实现延迟队列的示例

    2021-08-31 02:02:01
  • c# 解决IIS写Excel的权限问题

    2021-08-21 03:23:34
  • Android AS创建自定义布局案例详解

    2022-04-28 22:20:41
  • 关于java的九个预定义Class对象

    2023-08-16 01:56:16
  • java阶乘计算获得结果末尾0的个数代码实现

    2022-11-30 00:01:02
  • Java动态规划之硬币找零问题实现代码

    2023-01-23 20:37:38
  • JAVA简单工厂模式(从现实生活角度理解代码原理)

    2021-10-29 12:39:32
  • Unity3D动态对象优化代码分享

    2023-12-22 09:38:24
  • Android使用SharedPreferences存储数据的实现方法

    2021-08-22 02:05:49
  • 深入理解Android MD5数据加密

    2022-03-16 07:48:03
  • 挑战4道Java试题

    2022-04-12 04:41:02
  • Android中Retrofit 2.0直接使用JSON进行数据交互

    2022-01-08 07:22:46
  • android 实现在照片上绘制涂鸦的方法

    2023-09-17 13:24:49
  • VS Code开发React-Native及Flutter 开启无线局域网安卓真机调试问题

    2022-04-05 18:32:06
  • Android实现水波纹效果

    2022-12-11 01:47:16
  • Android编程实现状态保存的方法分析

    2023-07-17 12:54:45
  • Spring Boot 结合 aop 实现读写分离

    2023-09-29 07:53:02
  • Maven构建时跳过部分测试的实例

    2022-08-30 03:42:50
  • asp之家 软件编程 m.aspxhome.com