第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

您好,求問該怎樣在java里用URL引入圖片引入圖片 ?

您好,求問該怎樣在java里用URL引入圖片引入圖片 ?

慕尼黑8549860 2021-11-02 10:06:12
如題,網(wǎng)上查了很久都找不到答案。我是要建一個(gè)JFrame窗口,然后在里面的JLabel處引入圖片,已經(jīng)在src下?lián)炝藗€(gè)子目錄images來放圖片的,但是不知道怎樣引入,求高手教一教。如果可以的話順便教教我怎樣用相對(duì)路徑引用
查看完整描述

3 回答

?
胡子哥哥

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超6個(gè)贊

URL對(duì)象中前而幾個(gè)方法都非常容易理解,而該對(duì)象提供的openStream()可以讀取該 URL資源的InputStream,通過該方法可以非常方便地讀取遠(yuǎn)程資源。

下面的程序示范如何通過URL類讀取遠(yuǎn)程資源:

1)只顯示網(wǎng)絡(luò)圖片


1)只顯示網(wǎng)絡(luò)圖片


引用圖片處理的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) {  

                //顯示從網(wǎng)上下載的圖片  

                imageview.setImageBitmap(bitmap);  

            }  

        }            

    };  

      

    @Override  

    protected void onCreate(Bundle savedInstanceState) {  

        super.onCreate(savedInstanceState);  

        setContentView(R.layout.activity_main);  

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

        //創(chuàng)建并啟動(dòng)一個(gè)新線程用于從網(wǎng)絡(luò)上下載圖片  

        new Thread(){  

            @Override  

            public void run() {  

                try {  

                    //創(chuàng)建一個(gè)url對(duì)象  

                    URL url=new URL("http://www.baidu.com/img/bdlogo.png");  

                    //打開URL對(duì)應(yīng)的資源輸入流  

                    InputStream is= url.openStream();  

                    //從InputStream流中解析出圖片  

                    bitmap = BitmapFactory.decodeStream(is);  

                //  imageview.setImageBitmap(bitmap);   

                    //發(fā)送消息,通知UI組件顯示圖片  

                    handler.sendEmptyMessage(0x9527);  

                    //關(guān)閉輸入流  

                    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);  

    }  

}  



查看完整回答
反對(duì) 回復(fù) 2021-11-06
?
小怪獸愛吃肉

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超1個(gè)贊

查看API 可通過  JLabel構(gòu)造函數(shù),也可使用setIcon(Icon icon) 函數(shù),下面給出一個(gè)列子!

看樓主提問,主要想知道路徑怎么得來!

可使用


this.getClass().getResource("/")獲取的是class文件編譯后放置的絕對(duì)路徑。

this.getClass().getResource("/images/a.png");編譯地址/images/a.png (詳見代碼20-21)


這里圖片是放到src --  images -- a.png


有問題再追問,good luck!


import java.awt.BorderLayout;import java.awt.Container;import javax.swing.Icon;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JLabel;public class MyImages extends JFrame {    /**     * @Fields serialVersionUID : Description     */    private static final long serialVersionUID = 1060195358054863848L;    /**     * 創(chuàng)建一個(gè)新的實(shí)例 MyImages.     */    public MyImages() {        // TODO Auto-generated constructor stub        Container c = this.getContentPane();        c.setLayout(new BorderLayout());                                                                                                                                                                                                                                                                                                             Icon icon = new ImageIcon(this.getClass().getResource("/images/a.png"));        JLabel label = new JLabel("aaa", icon, JLabel.LEFT);                                                                                                                                                                                                                                                                                                             c.add(label, BorderLayout.CENTER);                                                                                                                                                                                                                                                                                                             this.setSize(500500);        this.setVisible(true);        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    }                                                                                                                                                                                                                                                                                                     public static void main(String[] args) {        new MyImages();    }}



查看完整回答
反對(duì) 回復(fù) 2021-11-06
?
繁星淼淼

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊

讀取圖片可以有以下兩種方法:
①:ImageIO.read(new File("這里可以寫目錄,比如您提到的src/images/某張圖片名"));
②:new ImageIcon("目錄").getImage();
這兩個(gè)方法都返回一個(gè)圖片對(duì)象。可以用一個(gè)Image對(duì)象接收一下。

相對(duì)路徑是指您所運(yùn)行的程序的包 所在的文件夾開始的路徑。
一般來說,上面兩種讀取方法讀取時(shí),是從項(xiàng)目的目錄下開始找文件的。
所以,您把圖片放在src下的images包中,正確的讀取方法應(yīng)該是:
Image img=ImageIO.read(new File("src/images/圖片名"));或者
Image img=new ImageIcon("src/images/圖片名").getImage();
得到這樣一個(gè)Image對(duì)象后,就可以使用了。



查看完整回答
反對(duì) 回復(fù) 2021-11-06
  • 3 回答
  • 0 關(guān)注
  • 405 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)