當前位置:編程學習大全網 - 源碼下載 - 請問java的JLabel上怎麽刷新?

請問java的JLabel上怎麽刷新?

更新和清空java jlabel圖片

Java jlabel中顯示的衣服圖片不能根據jcombobox的內容進行更新。

還有我想清空jlabel的圖,怎麽做!

JLabel.setIcon(null),編譯錯誤。

請給我壹些建議。

-解決方案。

我運行label.setIcon(null)沒有問題。我給妳舉個例子。運行時,需要在項目目錄下有壹個images目錄,和八張2.jpg壹樣的圖片...8.jpg被添加到該目錄中。

Java code import Java . awt . gridlayout;

導入Java . awt . event . action event;

導入Java . awt . event . action listener;

導入Java . net . URL;

導入javax . swing . border factory;

導入javax . swing . image icon;

導入javax . swing . jbutton;

導入javax . swing . jcombobox;

導入javax . swing . jframe;

導入javax . swing . jlabel;

導入javax . swing . jpanel;

導入javax . swing . ui manager;

公共類ImageRandomAccess2實現ActionListener {

最終靜態整數圖像數= 8;//顯示的圖片總數

最終靜態int START _ INDEX = 3;//初始化時默認顯示的圖片

image icon[]IMAGES = new image icon[NUM _ IMAGES];//初始化數組

JPanel主面板、選擇面板、顯示面板;//三個面板

JLabel selectLabel = null

JComboBox combobox = null//控制顯示哪些圖片,而不是立即滾動。

JButton controlBtn = null

JLabel imageIconLabel = null

//構造函數

public ImageRandomAccess2() {

//創建階段選擇和顯示面板。

select panel = new JPanel();

display panel = new JPanel();

//向子面板添加各種小部件。

add widgets();

//創建包含兩個子面板的主面板。

main panel = new JPanel();

main panel . set layout(new GridLayout(2,1,5,5));

main panel . set border(border factory . createemptyborder(5,5,5,5));

//將選擇和顯示面板添加到主面板。

main panel . add(select panel);

main panel . add(display panel);

}

//創建和小部件來選擇和顯示人物的圖像。

私有void addWidgets() {

//獲取圖像並將它們放入ImageIcon的數組中。

for(int I = 0;我& lt數量_圖像;i++) {

string imageName = " images/"+(I+1)+"jpg ";

System.out.println("獲取圖像:"+imageName);

//URL icon URL = class loader . get system resource(imageName);

image icon icon = new image icon(imageName);

images[i] =圖標;

}

//創建顯示圖像的標簽並加上邊框

//它。

imageIconLabel = new JLabel();

imageiconlabel . sethorizontal alignment(JLabel。中心);

imageiconplabel . setvertical alignment(JLabel。中心);

imageiconplabel . setverticaltextposition(JLabel。中心);

imageiconlabel . sethorizontaltextposition(JLabel。中心);

imageiconplabel . set border(border factory . createcompoundborder(

border factory . createloweredbevelborder(),

border factory . createemptyborder(5,5,5,5)));

imageiconplabel . set border(border factory . createcompoundborder(

border factory . createemptyborder(0,0,10,0),

imageiconplabel . get border()));

ControlBtn=new JButton("無圖");

SelectLabel=new JLabel("選擇圖片");

combobox = new JComboBox();

for(int I = 0;我& lt數量_圖像;i++){

combobox . additem(I);

}

select label . setlabel for(combobox);

//顯示第壹個圖像。

imageiconplabel . seticon(images[START _ INDEX]);

imageiconplabel . settext(" ");

//在選擇面板周圍添加邊框。

select panel . set border(border factory . createcompoundborder(

border factory . createtitledborder("選擇階段"),

border factory . createemptyborder(5,5,5,5)));

//在顯示面板周圍添加邊框。

display panel . set border(border factory . createcompoundborder(

border factory . createtitledborder("顯示階段"),

border factory . createemptyborder(5,5,5,5)));

//添加控件按鈕以選擇面板和圖像標簽

//顯示面板。

select panel . add(select label);

select panel . add(combobox);

select panel . add(control BTN);

display panel . add(imageIconLabel);

//偵聽來自控制按鈕的事件。

//control BTN . addactionlistener(this);

combobox . addactionlistener(this);

control BTN . addactionlistener(this);

}

布爾run = false

ActionListener接口的實現。

public void action performed(action event事件){

if(event . getsource()= = combobox){

int image index = combobox . getselectedindex();

imageicon label . seticon(images[image index]);

}

if(event . getsource()= = control BTN){

system . out . println("-");

imageiconplabel . seticon(null);

//ImageIcon label . seticon(new image icon());

}

}

//主方法

公共靜態void main(String[] args) {

//創建ImageRandomAccess的新實例

imagerandomaccess 2 phases = new imagerandomaccess 2();

//為面板創建框架和容器。

JFrame mainFrame = new JFrame(" ImangeRandomAccess ");

//設置外觀。

嘗試{

ui manager . setlookandfeel(ui manager

。getCrossPlatformLookAndFeelClassName());

} catch(異常e) {

}

mainframe . setcontentpane(phases . main panel);

//關閉窗口時退出。

mainframe . setdefaultcloseoperation(JFrame。EXIT _ ON _ CLOSE);

//顯示轉換器。

大型機. pack();

mainframe . setlocationrelativeto(null);

mainframe . set visible(true);

}

}

  • 上一篇:魔獸世界懷舊服瑟銀兄弟會鍛造圖紙有哪些
  • 下一篇:哪個大神有這兩個指標,求這兩個通達信副圖指標,謝謝!
  • copyright 2024編程學習大全網