中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

java窗體加圖片的代碼 java窗口添加圖片

java怎么給窗體或者面板設置背景圖片

import javax.swing.*;

成都創(chuàng)新互聯(lián)公司是一家專注于成都網(wǎng)站制作、成都網(wǎng)站設計、外貿營銷網(wǎng)站建設與策劃設計,競秀網(wǎng)站建設哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設十載,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:競秀等地區(qū)。競秀做網(wǎng)站價格咨詢:13518219792

import javax.imageio.*;

import java.awt.*;

import java.io.*;

public class AddImage {

public static void main(String[] args){

new AddImageFrame();

}

}

class AddImageFrame extends JFrame{

public AddImageFrame(){

super("添加背景圖片");

setBounds(200,200,500,400);

setDefaultCloseOperation(this.EXIT_ON_CLOSE);

setVisible(true);

AddImagePanel aip= new AddImagePanel();

add(aip);

}

}

class AddImagePanel extends JPanel{

private Image backgroundimage=null;

public void paintComponent(Graphics g){

super.paintComponent(g);

try{

backgroundimage=ImageIO.read(new File("E:/picture/http_imgload.jpg")).getScaledInstance(getWidth(),getHeight(),Image.SCALE_FAST);

}catch(IOException e){

e.printStackTrace();

}

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

image.flush();

}

}

這是設置背景圖片的簡單代碼 你要的主要是 backgroundimage=ImageIO.read(new File("E:/picture/http_imgload.jpg")).getScaledInstance(getWidth(),getHeight(),Image.SCALE_FAST);

javax.image包里面有一個類 ImageIO有一個方法read(File string) 讀取一個圖片文件返回image對象,F(xiàn)ile會拋出異常,awt包里面的Image有個方法 getScaledstance(width,height,hints) 是縮放圖片到多大,intnts是縮放的算法,取Image字段常量,有很多鐘算法,你可以取一種,這個程序里圖片的大小取的是容納它的panel面板的大小,會隨著面板的變化充滿整個面板,這個變化過程要調用面板的 paintComponent()方法來監(jiān)視,Graphics 中的drawImage(x,y,observer)方法來實現(xiàn),observer是安全管理器,可以為null,最后繪畫完后刷新就可以了,希望對你有幫助,俺也是初學者,交流為上 ,不過我個人還是認為下面的方法比較好

public void setBak() { //設置窗口背景

((JPanel) this.getContentPane()).setOpaque(false);

ImageIcon img = new ImageIcon(getClass().getResource("picture/http_imgload.jpg"));

JLabel background = new JLabel(img);

this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));

background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());

}構造器調用這個方法圖片不會縮放,上面的例子 不用縮放的方法也可以做到,就看怎么看了

java swing添加圖片

在java swing中需要為容器添加圖片,或者背景圖片。

提供兩種簡單的解決方案,一種利用JPanel,另一種利用JLabel

1.JPanel(源代碼)

package oo;

import java.awt.Graphics;

import java.awt.Image;

import java.io.File;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class Drawing {

JFrame jframe = new JFrame();

public static JPanel GImage = null;

public Drawing() {

initFrame();

}

// 初始化窗口

public void initFrame() {

// 利用JPanel添加背景圖片

GImage = new JPanel() {

protected void paintComponent(Graphics g) {

ImageIcon icon = new ImageIcon("image\\benbenla.jpg");

Image img = icon.getImage();

g.drawImage(img, 0, 0, icon.getIconWidth(),

icon.getIconHeight(), icon.getImageObserver());

jframe.setSize(icon.getIconWidth(), icon.getIconHeight());

}

};

jframe.setTitle("測試背景圖片");

jframe.add(GImage);

jframe.pack();

jframe.setVisible(true);

jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String[] args) {

new Drawing();

}

}

2.JLabel源代碼

package swing.draw;

import java.awt.Image;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JLabel;

public class Drawing2 {

JLabel jlpic = new JLabel();

JFrame jframe = new JFrame();

public Drawing2() {

init1Frame();

}

public void init1Frame() {

ImageIcon icon = new ImageIcon("image\\benbenla.jpg");

icon.setImage(icon.getImage().getScaledInstance(icon.getIconWidth(),

icon.getIconHeight(), Image.SCALE_DEFAULT));

System.out.println(icon.getIconHeight() + "" + icon.getIconWidth());

jlpic.setBounds(0, 0, 1366, 768);

jlpic.setHorizontalAlignment(0);

jlpic.setIcon(icon);

jframe.setSize(1366, 768);

jframe.add(jlpic);

jframe.pack();

jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jframe.setVisible(true);

}

public static void main(String args[]) {

new Drawing2();

}

}

java怎么給窗體或者面板設置背景圖片?

1利用標簽組件來設置\x0d\x0a標簽本來是一種最簡單的組件,為什么可以將它設置成為一個窗體的背景呢?首先還是要了解框架JFrame中的層次結構。JFrame中的層次分布及相對關系是:最底層是JRootPane,第二層是JlayerPane,最上層就是ContentPane,也正是我們常說的內容面板。所以一般我們拖放的控件就是在ContentPane層上。也就是說我們只需將背景圖片放在JFrame的第二層是JlayerPane上,再把內容面板ContentPane設置為透明,則第二層JlayerPane上放置的圖片即成為內容面板的背景了。具體代碼如下:\x0d\x0aJPanelpnlMain=newJPanel();//創(chuàng)建面板pnlMain。\x0d\x0agetContentPane().add(pnlMain);//將pnlMain設置為主面板。\x0d\x0aIconi=newImageIcon("背景.jpg");/*用源圖片“背景.jpg”構造一個ImageIcon對象i,需要注意如果圖片的路徑使用的是相對路徑,則圖片文件必須放在類文件所在文件夾或項目的根文件夾中,否則圖片的路徑必須用絕對路徑。*/\x0d\x0aJLabellblLogo=newJLabel(i);//用指定的圖片構造標簽對象lb\x0d\x0athis.getLayeredPane().add(lb,newInteger(Integer.MIN_VALUE));\x0d\x0a//把標簽放在第二層JlayerPane上。\x0d\x0alb.setBounds(0,0,ii.getIconWidth(),i.getIconHeight());\x0d\x0a//設置標簽的尺寸,即背景圖象的大小。\x0d\x0agetConentPane().setOpaque(false);/*把內容面板設置為透明,這樣整個框架的背景就不再是內容面板的背景色,而是第二層中標簽的圖像。*/\x0d\x0apnlMain.add(lb);//將標簽添加到主面板pnlMain中。\x0d\x0a用標簽組件JLabel來設置窗體背景,其擴展性上比較差,且在標簽上不能放置其他組件,比如:在放置一個JButton,整個布局背景圖就錯亂。導致這種現(xiàn)象是因為Java加載組件是有順序的,作為背景的JLabel的代碼一定要放在全部組件代碼的最后,這樣JLabel的背景圖片才不會被其他組件遮住,從而使整個布局背景錯亂。所以采用這種方式來設置窗體背景有很大的局限性。因此最好是采用以下方式來設置窗體背景。\x0d\x0a2通過JPanel面板來設置窗體背景\x0d\x0aJPanel面板是Java中的容器之一。而Java中的容器是沒有背景圖片的屬性的,它們只有背景顏色,如果需要在JPanel面板上設置窗體背景,就需要重寫paintComponent(Graphicsg)方法,即把所要設置的背景圖片畫上作為JPanel面板的背景。具體實現(xiàn)如下:\x0d\x0a首先定義一個JPanel的子類BjPanel,由于JPanel的構造方法不能添加圖像,因此在創(chuàng)建此子類的時候先用getImage載入一幅背景圖片,在重寫paintComponent(Graphicsg)方法時,利用drawImage方法將其逐漸繪制到屏幕上,并將該面板添加到框架中,最后將該面板設置為透明。其代碼如下:\x0d\x0aimportjava.awt.*;\x0d\x0aimportjavax.swing.*;\x0d\x0apublicclassbkground\x0d\x0a{\x0d\x0apublicstaticvoidmain(Stringargs[])\x0d\x0a{\x0d\x0aBjFramef=newBjFrame();\x0d\x0af.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);\x0d\x0af.setVisible(true);\x0d\x0a}\x0d\x0a}\x0d\x0aclassBjFrameextendsJFrame\x0d\x0a{\x0d\x0apublicBjFrame()\x0d\x0a{\x0d\x0asetSize(WTH,HHT);\x0d\x0aBjPanelpl=newBjPanel();\x0d\x0aContainercontentPane=getContentPane();\x0d\x0acontentPane.add(pl);\x0d\x0apl.setOpaque(true);\x0d\x0a}\x0d\x0apublicstaticfinalintWTH=300;\x0d\x0apublicstaticfinalintHHT=200;\x0d\x0a}\x0d\x0aclassBjPanelextendsJPanel\x0d\x0a{\x0d\x0aImageim;\x0d\x0apublicBjPanel()\x0d\x0a{\x0d\x0aim=Toolkit.getDefaultToolkit().getImage("背景.jpg");//需要注意的是如果用相對路徑載入圖片,則圖片文件必須放在類文件所在文件夾或項目的根文件夾中,否則必須用絕對路徑。\x0d\x0a}\x0d\x0apublicvoidpaintComponent(Graphicsg)\x0d\x0a{\x0d\x0asuper.paintComponent(g);\x0d\x0aintimWidth=image.getWidth(this);\x0d\x0aIntimHeight=image.getHeight(this);//定義圖片的寬度、高度\x0d\x0aintFWidth=getWidth();\x0d\x0aintFHeight=getHeight();//定義窗口的寬度、高度\x0d\x0aintx=(FWidth-imWidth)/2;\x0d\x0ainty=(FHeight-imHeight)/2;//計算圖片的坐標,使圖片顯示在窗口正中間\x0d\x0ag.drawImage(image,x,y,null);//繪制圖片\x0d\x0a}\x0d\x0a}

java窗體中combobox怎么添加圖片

具體代碼如下:

ComboBox a=new ComboBox(new ImageIcon("image/xy.jpg")); 即括號里填你需要的圖片

java中怎樣設置窗體背景圖片,可以附上代碼嗎?

//不就是在窗口上設置一個背景圖片么?怎么那么多不同的聲音?

//代碼如下 運行就看到結果了,你準備好個圖片 放到當前路徑里就可以了

import java.util.*;

import javax.swing.*;

public class Test extends JFrame {

private JPanel pan;

private JLabel labName;

private JTextField tfName;

private JLabel labPass;

private JPasswordField tfPass;

private JButton butConfirm;

private ImageIcon ii;

private JLabel lab;

Test(){

this.setBounds(200, 200, 300, 200);

pan = new JPanel();

labName = new JLabel("用戶名");

tfName = new JTextField(20);

labPass = new JLabel("密 碼");

tfPass = new JPasswordField(20);

butConfirm = new JButton("SAVE");

pan.add(labName);

pan.add(tfName);

pan.add(labPass);

pan.add(tfPass);

pan.add(butConfirm);

ii = new ImageIcon("1.jpg");//你只需要把這里的圖片1.jpg給改了就可以了

lab = new JLabel(ii);

lab.setBounds(0, 0,ii.getIconWidth(), ii.getIconHeight());

this.getLayeredPane().setLayout(null);

this.getLayeredPane().add(lab, new Integer(Integer.MIN_VALUE));

this.setContentPane(pan);

pan.setOpaque(false);

this.setVisible(true);

}

public static void main(String args[]){

new Test();

}

}

當前名稱:java窗體加圖片的代碼 java窗口添加圖片
本文URL:http://www.rwnh.cn/article24/hiihje.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、網(wǎng)站設計、動態(tài)網(wǎng)站、網(wǎng)頁設計公司、網(wǎng)站策劃、云服務器

廣告

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

成都定制網(wǎng)站建設
湘西| 临城县| 旺苍县| 芦山县| 瑞昌市| 偃师市| 嘉峪关市| 石屏县| 永善县| 登封市| 西藏| 鄂托克前旗| 南江县| 贵溪市| 岳西县| 凤山县| 高阳县| 广水市| 宣汉县| 阳高县| 肃宁县| 密山市| 云安县| 江达县| 于田县| 平顶山市| 柳江县| 镇赉县| 阿拉善左旗| 永康市| 吕梁市| 吉林省| 霍邱县| 永丰县| 奉节县| 衡阳县| 北票市| 镶黄旗| 黔南| 淳安县| 习水县|