「java窗体怎么引用图片」怎么往java窗口里面放图片

博主:adminadmin 2022-12-29 04:45:06 58

本篇文章给大家谈谈java窗体怎么引用图片,以及怎么往java窗口里面放图片对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java gui中怎么向窗体中添加一张图片,要求不用icon

代码如下:

import java.awt.*;  

import java.awt.event.*;  

import javax.swing.*;  

   

public class GraExp extends JFrame  

{   

CInstead c1=new CInstead();  

Container c;  

JLabel lbl1=new JLabel("姓名:" );  

JLabel lbl2=new JLabel("密码:" );  

JTextField tf1=new JTextField(10),  

tf2=new JTextField(10);  

   

public GraExp()  

{   

setContentPane(c1);  

c=getContentPane();  

c.setLayout(new FlowLayout(FlowLayout.LEFT));  

c.add(lbl1);  

c.add(tf1);  

c.add(lbl2);  

c.add(tf2);  

   

setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);  

setSize(new Dimension(400,300));  

show();  

}   

public static void main(String[] args)  

{   

GraExp ge=new GraExp();  

}   

class CInstead extends JPanel  

{   

ImageIcon icon;  

Image img;  

public CInstead()  

{   

icon=new ImageIcon(GraExp.class.getResource("333.png" ));  

img=icon.getImage();  

}   

public void paintComponent(Graphics g)  

{   

super.paintComponent(g);  

g.drawImage(img,0,0,null );  

}   

}   

}

程序分析: 

JComponent.paint先绘制组件,然后绘制组件的边框,再绘制组件的子组件。调用的顺序确保组件、边框和子组件都是可视的。如果组件有一个 UI代表,则JComponent.paintComponent调用该代表的Update方法,该方法为不透明组件擦除背景,然后绘制组件。 

CInstead是一个不透明的组件,如果重载paint方法,其背景图是无法被擦除的,因此,即使更新了组件的所有包含组件,在界面上是看不到的。所以必须重载paintComponent方法,在绘制子组件前先擦除背景。 

对双缓存组件,paint方法负责把组件绘制到屏外缓存中,然后把屏外缓存拷贝到组件的屏上代表中,正因为如此,不建议为Swing组件重载paint,如果需要重新定义如何绘制组件,那么就重载paintComponent()。 

怎样在java里用URL引入图片引入图片

URL对象中前而几个方法都非常容易理解,而该对象提供的openStream()可以读取该 URL资源的InputStream,通过该方法可以非常方便地读取远程资源。

下面的程序示范如何通过URL类读取远程资源:

1)只显示网络图片

1)只显示网络图片

引用图片处理的java类:

package dujun.king.urlgetimage;

import java.io.InputStream;

import java.net.URL;

import android.app.Activity;

import android.graphics.Bitmap;

import android.graphics.BitmapFactory;

import android.os.Bundle;

import android.os.Handler;

import android.os.Message;

import android.view.Menu;

import android.view.MenuItem;

import android.widget.ImageView;

public class MainActivity extends Activity {

Bitmap bitmap;

ImageView imageview;

Handler handler=new Handler(){

@Override

public void handleMessage(Message msg) {

if (msg.what==0x9527) {

//显示从网上下载的图片

imageview.setImageBitmap(bitmap);

}

}

};

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

imageview=(ImageView)findViewById(R.id.imageView1);

//创建并启动一个新线程用于从网络上下载图片

new Thread(){

@Override

public void run() {

try {

//创建一个url对象

URL url=new URL("");

//打开URL对应的资源输入流

InputStream is= url.openStream();

//从InputStream流中解析出图片

bitmap = BitmapFactory.decodeStream(is);

//  imageview.setImageBitmap(bitmap);

//发送消息,通知UI组件显示图片

handler.sendEmptyMessage(0x9527);

//关闭输入流

is.close();

} catch (Exception e) {

e.printStackTrace();

}

}

}.start();

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

@Override

public boolean onOptionsItemSelected(MenuItem item) {

// Handle action bar item clicks here. The action bar will

// automatically handle clicks on the Home/Up button, so long

// as you specify a parent activity in AndroidManifest.xml.

int id = item.getItemId();

if (id == R.id.action_settings) {

return true;

}

return super.onOptionsItemSelected(item);

}

}

如何在java的窗口中添加背景图片

可以新建个面板,在面板里放入带图片的JLabel,填满面板即可。

JPanel jp = new JPanel(); //新建面板

jp.setLayout(new FlowLayout()); //设置面板布局

ImageIcon ii=new ImageIcon(getClass().getResource("/Picture/i.jpg"));

JLabel uppicture=new JLabel(ii); //往面板里加入JLabel

this.setVisible(true);

java窗体怎么引用图片的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于怎么往java窗口里面放图片、java窗体怎么引用图片的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-29,除非注明,否则均为首码项目网原创文章,转载请注明出处。