[英]How can I create responsive JList in Java Swing
我想通過擁有一個主JPanel
來創建商店,其中的每個內部組件都是一個具有圖像,標簽和按鈕的JPanel
。
使用我沒有嘗試過JList
但隨着問題JList
其僅持有該組件的渲染,因為該按鈕沒有工作,其唯一的圖像和。 我可以四處走動並使用MouseEvent,但對我來說這是錯的,我相信有更好的解決方案。
我希望組件將根據框架大小更改其位置,例如JList
。
例如,如果我從屏幕的寬度更改,組件的位置將由此改變:
對此:
我確實有一個想法,可以在paintComponent
使用GridLayout
或GridBagLayout
(因為它調用每個渲染。如果您知道另一個我想知道的調用JPanel
每個渲染int的方法),並通過更改布局變量來更改組件的位置在paintComponent
內部。
我確實瀏覽了互聯網以找到解決方案,但我只發現人們使用了JTable
但我看不到它在這里起作用。
其中的每個組件都是一個帶有圖像,標簽和按鈕的JPanel。
說得通。
通過更改paintComponent內部的布局變量來更改組件的位置。
paintComponent()方法與更改面板的布局無關。 您不應該使用paintComponent()方法。
我確實有使用GridLayout或GridBagLayout的想法
使用布局管理器是正確的,但是不幸的是,沒有默認布局管理器會自動包裝隨機數量的組件。
調整框架大小時,將自動調用布局管理器。
因此,您可以使用Wrap Layout ,這是FlowLayout的擴展,允許隨機包裝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.