欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java顯示圖片的代碼,java讀取圖片并顯示

Java對話框上顯示圖片

其實有很多種方法可以解決圖片顯示大小的問題:

專注于為中小企業(yè)提供網(wǎng)站設計制作、成都網(wǎng)站制作服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)衛(wèi)輝免費做網(wǎng)站提供優(yōu)質的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉變。

使用photoshop修改. 優(yōu)點是可以節(jié)省系統(tǒng)資源, 顯示圖片的時候,不用做處理,缺點是需要了解ps的基本操作

使用JDialog 自定義對話框. 優(yōu)點 可以實現(xiàn)復雜的效果, 缺點,代碼量比較多

使用ImageIcon, Image 類 實現(xiàn)圖片的縮放,. 優(yōu)點: 純java代碼解決, 缺點: 如果大量的圖片需要縮放, 那么可能影響程序的速度.

方案3的代碼如下

import?java.awt.Image;

import?javax.swing.ImageIcon;

import?javax.swing.JOptionPane;

public?class?Test?{

public?static?void?main(String[]?args)?{

ImageIcon?icon?=?new?ImageIcon("imgs/1.png");?//?得到icon對象?.注意我的圖片地址和你的不一樣,注意修改!!

Image?image?=?icon.getImage();?//icon---Image

float?scale?=?0.5f;?//縮放比例?50%

int?width?=?Math.round(icon.getIconWidth()*scale);?//?變小?50%的寬

int?height=?Math.round(icon.getIconHeight()*scale);//?變小50%的高

Image?miniIcon?=?image.getScaledInstance(width,?height,?Image.SCALE_SMOOTH);

//?image?變成指定大小.?縮放模式為?SCALE_SMOOTH(平滑優(yōu)先)

ImageIcon?smallIcon?=?new?ImageIcon(miniIcon);//?Image---icon

JOptionPane.showInputDialog(null,?"吃了嗎?",?"標題",?0,?smallIcon,?null,?"默認值");

}

}

效果圖

圖1 圖片顯示比例為原圖的50%

圖2 圖片顯示比例為原圖的120%

怎么在java面板中顯示一張圖片

是這樣的,你在面板上搞一個和面板一樣大的JLabel

然后,通過JFileChooser獲得路徑,利用這個圖片的路徑,構建一個ImageIcon

最后,根據(jù)這個ImageIcon去給JLabel對象setIcon(ImageIcon對象);

具體地:

1.panel.add(label,BorderLayout.CENTER);

2.ImageIcon icon = new ImageIcon(url);

3.label.setIcon(icon);

下面的代碼你把 .JPG改成BMP試試看,O(∩_∩)O~

package com.shlq.sample;

import java.awt.BorderLayout;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

public class ImagePane extends JPanel

{

JLabel jl = null;

ImageIcon img = null;

public ImagePane()

{

img = new ImageIcon( "E:\\Picture\\1.jpg ");

jl = new JLabel(img);

this.setLayout(new BorderLayout());

this.add(jl, BorderLayout.CENTER);

}

public static void main(String[] args)

{

JFrame test = new JFrame( "Image Pane ");

test.getContentPane().add(new ImagePane());

test.pack();

test.setVisible(true);

test.addWindowListener(new WindowAdapter()

{

public void windowClosing(WindowEvent e)

{

System.exit(0);

}

});

}

}

java圖片顯示代碼

不是很明白,

類似于啟動界面的么?

import javax.swing.*;

import java.awt.*;

import java.net.*;

public class JSplashWindow extends JWindow implements Runnable

{

Thread splashThread=null;

public JSplashWindow()

{

setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));//設置啟動界面的光標樣式

JPanel splash=new JPanel(new BorderLayout());

URL url=getClass().getResource("1.jpg");//獲得指定資源文件的絕對路徑。

if(url!=null)

{

splash.add(new JLabel(new ImageIcon(url)),BorderLayout.CENTER);

}

setContentPane(splash);

Dimension screen=Toolkit.getDefaultToolkit().getScreenSize();//獲得屏幕的大小

pack();

setLocation((screen.width-getSize().width)/2,(screen.height-getSize().height)/2);//使啟動窗口居中顯示

start();

}

public void start()

{

toFront();//window類的toFront()方法可以讓啟動界面顯示的時候暫時在最前面,用window類的setAlwayOnTop(boolean)方法可以讓窗口總保持在最前面。

splashThread=new Thread(this);

splashThread.start();

}

public void run()

{

try

{

setVisible(true);

Thread.sleep(50000);

}

catch(Exception e)

{

e.printStackTrace();

}

dispose();

}

static void showFrame(String title)

{

JFrame frame=new JFrame(title);

frame.setSize(400,300);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Dimension screenSize=frame.getToolkit().getScreenSize();//獲得屏幕的大小

Dimension frameSize=frame.getSize();

if(frameSize.heightscreenSize.height)

{

frameSize.height=screenSize.height;

}

if(frameSize.widthscreenSize.width)

{

frameSize.width=screenSize.width;

}

frame.setLocation((screenSize.width-frameSize.width)/2,(screenSize.height-frameSize.height)/2);

frame.setVisible(true);

}

public static void main(String[] args)

{

showFrame("Demo splash window");

JSplashWindow splash=new JSplashWindow();

//splash.start();

}

}

/*getToolkit()方法是java.awt.window類的方法它可以得到一個Toolkit類。Toolkit對象的getScreenSize()方法可以得到屏幕的大小。

getScreenSize()方法返回一個 Dimension對象,它的width,height屬性就是屏幕的寬和高。

Object getClass()方法是java.lang.Object類的方法它可以獲得當前正在運行類的對象

URL getResource(String name)方法是java.lang.Class類的方法用此方法可以獲得一個指定資源文件的絕對路徑。*/

java怎么顯示本地圖片

在面板上搞一個和面板一樣大的JLabel

然后,通過JFileChooser獲得路徑,利用這個圖片的路徑,構建一個ImageIcon

最后,根據(jù)這個ImageIcon去給JLabel對象setIcon(ImageIcon對象);

具體地:

1.panel.add(label,BorderLayout.CENTER);

2.ImageIcon icon = new ImageIcon(url);

3.label.setIcon(icon);

下面的代碼你把 .JPG改成BMP試試看,O(∩_∩)O~

package com.shlq.sample;

import java.awt.BorderLayout;

import java.awt.event.WindowAdapter;

import java.awt.event.WindowEvent;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

public class ImagePane extends JPanel

{

JLabel jl = null;

ImageIcon img = null;

public ImagePane()

{

img = new ImageIcon( "E:\\Picture\\1.jpg ");

jl = new JLabel(img);

this.setLayout(new BorderLayout());

this.add(jl, BorderLayout.CENTER);

}

public static void main(String[] args)

{

JFrame test = new JFrame( "Image Pane ");

test.getContentPane().add(new ImagePane());

test.pack();

test.setVisible(true);

test.addWindowListener(new WindowAdapter()

{

public void windowClosing(WindowEvent e)

{

System.exit(0);

}

});

}

}

java如何讀取文件夾中的圖片并在界面顯示

下面給你提供一個實現(xiàn),該實現(xiàn)采用了代理模式。這個實現(xiàn)包含兩個文件,分別是Client.java和ImageIcoProxy.java,ImageIcoProxy.java負責了圖片的延遲加載,你可以修改為不延遲即可。

Client.java的代碼為:

import java.awt.Graphics;

import java.awt.Insets;

import javax.swing.Icon;

import javax.swing.JFrame;

public class Client extends JFrame {

private static int IMG_WIDTH = 510;

private static int IMG_HEIGHT = 317;

private Icon imgProxy = null;

public static void main(String[] args) {

Client app = new Client();

app.setVisible(true);

}

public Client() {

super("Virture Proxy Client");

imgProxy = new ImageIcoProxy("D:/test.jpg", IMG_WIDTH, IMG_HEIGHT);

this.setBounds(100, 100, IMG_WIDTH + 10, IMG_HEIGHT + 30);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public void paint(Graphics g) {

super.paint(g);

Insets insets = getInsets();

imgProxy.paintIcon(this, g, insets.left, insets.top);

}

}

ImageIcoProxy.java的代碼為:

import java.awt.Component;

import java.awt.Graphics;

import javax.swing.Icon;

import javax.swing.ImageIcon;

import javax.swing.SwingUtilities;

public class ImageIcoProxy implements Icon {

private ImageIcon realIcon = null;

private String imgName;

private int width;

private int height;

boolean isIconCreated = false;

public ImageIcoProxy(String imgName, int width, int height) {

this.imgName = imgName;

this.width = width;

this.height = height;

}

public int getIconHeight() {

return realIcon.getIconHeight();

}

public int getIconWidth() {

return realIcon.getIconWidth();

}

public void paintIcon(final Component c, Graphics g, int x, int y) {

if (isIconCreated) {

//已經(jīng)加載了圖片,直接顯示

realIcon.paintIcon(c, g, x, y);

g.drawString("Just Test", x + 20, y + 370);

} else {

g.drawRect(x, y, width-1, height-1);

g.drawString("Loading photo...", x+20, y+20);

synchronized(this) {

SwingUtilities.invokeLater(new Runnable() {

public void run() {

try {

Thread.currentThread().sleep(2000);

realIcon = new ImageIcon(imgName);

isIconCreated = true;

} catch (Exception e) {

e.printStackTrace();

}

c.repaint();

}

}

);

}

}

}

}

java中輸出圖片的代碼

final ImageView iv=(ImageView)findViewById(R.id.iv);

Button bt=(Button)findViewById(R.id.bt);

bt.setOnClickListener(new View.OnClickListener(){

@Override

public void onClick(View p1)

{

// TODO: Implement this method

if(iv.getDrawable()!=null)

iv.setImageResource(R.id.photo);

else iv.setImageResource(0);

}

});

網(wǎng)站欄目:java顯示圖片的代碼,java讀取圖片并顯示
當前URL:http://chinadenli.net/article16/phesgg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供Google用戶體驗企業(yè)網(wǎng)站制作定制網(wǎng)站網(wǎng)站改版營銷型網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司