2013-04-13 99 views
0

假設我有一個JLabel中的圖像。下面是我目前如何添加它:如何在窗口調整大小時調整JLabel中的圖像大小?如何保持適當的規模?

p=resizeImage(p,lbl.getWidth(),lbl.getHeight()); 
lbl.setIcon(p); 

我想調整大小,因爲標籤的大小調整。

  • 我該如何做到這一點?
  • 如何在保持 比例的同時調整大小?

我可以寫一個小函數來獲取圖像的寬高比,獲得標籤的寬度和高度,找到兩個較小的(比例)並手動計算新的高度和寬度。這不會是一個問題,但我想知道是否有更簡潔的方法。

回答

1

您可以聽取標籤的大小調整事件,或者我更喜歡直接繪製圖像(用JComponent替換JLabel)。

+0

完美運作。我用的resize事件的方法: lbl.addComponentListener(新的ComponentListener(){ \t \t \t公共無效的componentResized(ComponentEvent EVT){ \t調整大小();} 現在只需要修改我的調整方法作出它保持比例 – Zima

+0

@Zima:顯示了一些示例或比例縮放比例[here](http://stackoverflow.com/q/15961412/230513)。 – trashgod

+0

全部完成。乾杯! – Zima

相關問題