2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

SWING?組件加載圖片方法

 靜xiaojing 2011-06-24

這幾天幫別人做了個系統(tǒng),積累了一點心得

先要設置圖片路徑,我們將一將背景圖片back.jpg放到C盤的img目錄下,調用語句如下:

ImageIcon icon=new ImageIcon("C:\\img\\back.jpg),一定要是雙反斜杠

然后分別在JComponent里添加圖片

JFrame

利用JFrame的一個方法setIconImage(Image image);

由于要用到Image類,所以還得把上面定義的ImageIcon對象轉換成Image對象:

Image image=icon.getImage();

然后就可以調用JFrame的setIconImage(image)方法了。請看源代碼

JLabel

這個簡單些,有兩種方法。

直接在構造函數(shù)里加載:JLabel label=new JLabel(icon);

或者:JLabel label=new JLabel("title");

      label.setIcon(icon);

JMenu

JMenu menu=new JMenu("title");

menu.setIcon(icon);

JMenuItem

有兩種方法

一種是在構造方法里直接加載:JMenuItem item=new JMenuItem("title",icon);或者

JMenuItem item=new JMenuItem(icon);

另一種方法和JMenu一樣:

JMenuItem item=new JMenuItem("title");

item.setIcon(icon);

JTree

由于該組件涉及到幾個對象,因此就有相應的圖片加載方法,代碼如下:

DefaultTreeCellRenderer renderer = new DefaultTreeCellRenderer();

JTree jTree1 = new javax.swing.JTree(root);
DefaultTreeCellRenderer renderer = new DefaultTreeCellRenderer();
renderer.setOpenIcon(new ImageIcon("C:\\img\\down.jpg"));//展開時節(jié)點圖標
renderer.setClosedIcon(new ImageIcon("C:\\img\\file.jpg"));//折疊時節(jié)點圖標
renderer.setLeafIcon(new ImageIcon("C:\\img\\man_small.jpg"));葉子節(jié)點圖標
jTree1.setCellRenderer(renderer);

完整實例看下面的源代碼。

其余的組件基本上大同小異了。

 

還要注意一點的是,由于有些圖片的格式JVM不能識別,所以要轉格式,一般為jpg,gif.如把.bmp格式的轉換為.jpg,不能簡單的把后綴名改了 就行,這樣照樣不能顯示。方法很簡單,直接用WINDOWS自帶的畫圖工具打開圖片,然后另存為時改為.jpg或.gif格式就可以了。

附源代碼

import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.JTree;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import java.awt.FlowLayout;

public class ImageTest extends JFrame{
    ImageIcon icon=new ImageIcon("c:\\img\\system.jpg");
    Image image=icon.getImage();
    public ImageTest()
    {
        JMenuBar mb=new JMenuBar();
        this.setJMenuBar(mb);    
        JMenu menu=new JMenu("system");
        menu.setIcon(icon);
        //JMenuItem item=new JMenuItem("exit",icon);
        JMenuItem item=new JMenuItem(icon);
        item.setIcon(icon);
        JLabel label=new JLabel(icon);
        //label.setIcon(icon);
        menu.add(item);
        mb.add(menu);  
       
        

        DefaultMutableTreeNode root=new DefaultMutableTreeNode();
        DefaultMutableTreeNode node1=new DefaultMutableTreeNode();
        DefaultMutableTreeNode node11=new DefaultMutableTreeNode();
        DefaultMutableTreeNode node12=new DefaultMutableTreeNode();
        DefaultMutableTreeNode node2=new DefaultMutableTreeNode();
        DefaultMutableTreeNode node21=new DefaultMutableTreeNode();
        root.add(node1);
        root.add(node2);
        node1.add(node11);
        node1.add(node12);
        node2.add(node21);
       
       
        JTree jTree1 = new javax.swing.JTree(root);
        DefaultTreeCellRenderer renderer = new DefaultTreeCellRenderer();
        renderer.setOpenIcon(new ImageIcon("C:\\img\\down.jpg"));    //展開時節(jié)點圖標
            renderer.setClosedIcon(new ImageIcon("C:\\img\\file.jpg"));  //折疊時節(jié)點圖標
        renderer.setLeafIcon(new ImageIcon("C:\\img\\man_small.jpg"));    //葉子節(jié)點圖標
        jTree1.setCellRenderer(renderer);
        this.add(label);
        this.setIconImage(image);
      
        this.add(jTree1);
        this.setDefaultCloseOperation(3);
        this.setLocation(300,400);
        this.pack();
        this.setVisible(true);
    }
    public static void main(String[] args)
    {
        new ImageTest();
    }

 

附圖:

SWING <wbr>組件加載圖片方法

歡迎大家把自己的一些經(jīng)驗寫在這里,謝謝

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多