簡體   English   中英

Java swing GridLayout調整單元格大小

[英]Java swing GridLayout adjusting cellsize

使用GridLayout(4,4)啟動JPanel之后,我在每個大小為(150,150)的網格單元內插入一個JLabel(並向其附加一個圖像圖標)。

當我將JLabel調整為大小(100,100)時,圖像被裁剪(對我來說很好),但是我得到了一個看起來很奇怪的網格(末尾添加了圖像)。

如果這有幫助:我實際上不調整窗口大小,只需要確保將JLabel的大小始終設置為(100,100),不要擔心原始圖像的大小是多少。

之前: http//postimg.org/image/iolyeb8e7/

之后: http : //postimg.org/image/5j6g87ein/

謝謝

不幸的是,您沒有說出期望網格的外觀。 我假設您不希望這些單元格彼此分開那么遠。

GridLayout文檔指出...

容器分為相等大小的矩形,每個矩形中放置一個組件。

如果縮小每個JLabel的大小(即每個矩形中的組件),則只需執行此操作。 您縮小組件的大小,而不是矩形的大小。 網格不在乎組件是否較小以填充整個矩形。 目前,您將組件添加到網格1時 ,網格會嘗試設置組件大小以最適合可用空間。 但是,如果您以后更改標簽大小,則網格將不在乎。

您可能想要的是更改整個網格的大小:如果將網格大小設置為400 x 400,則應將其均勻地划分為所有4行和4列,這樣您將得到大小為100 x 100的矩形。所有標簽都應自動調整大小。


1大概不是在添加標簽時而是在驗證容器時 ,但我不知道有關布局的方式和時間的所有內部細節。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM