第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Java GridBagLayout 正在調(diào)整其自身之外的對(duì)象的大小

Java GridBagLayout 正在調(diào)整其自身之外的對(duì)象的大小

呼啦一陣風(fēng) 2023-07-19 15:55:23
我正在使用GridBagLayoutfor 我的程序的一部分。當(dāng)我將界面的這一部分添加到程序中時(shí),它會(huì)調(diào)整界面其余部分的大小并使其看起來很愚蠢。這是添加和未添加網(wǎng)格包布局的并排界面。如您所見,將網(wǎng)格包布局對(duì)象添加到界面會(huì)調(diào)整框架中其他對(duì)象的大小。下面是我希望的界面:(我在 MS Paint 中很快就完成了這個(gè),而不是使用代碼。)我是否需要將整個(gè)界面切換為網(wǎng)格包布局,或者是否可以在不這樣做的情況下執(zhí)行此操作?
查看完整描述

1 回答

?
ibeautiful

TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊

問題不在于 GridBagLayout。


問題是您在父面板(在我看來您可能正在使用 GridLayout)和框架左側(cè)部分使用的面板上使用的布局管理器。


問題在于右側(cè)面板的首選高度大于左側(cè)面板的首選高度。然后,您使用的布局管理器將為左側(cè)面板上的所有組件添加額外的高度。同樣,您沒有告訴我們您正在使用什么布局管理器,但我猜測(cè)是 GridLayout 或 BoxLayout,并且布局管理器正在調(diào)整組件大小以填充額外的可用空間。


所以解決方案是更有效地使用布局管理器。


所以我會(huì)保留框架的默認(rèn) BorderLayout,然后你的基本邏輯將是這樣的:


JPanel rightPanel = new JPanel(); // use your GridBagLayout.

frame.add(rightPanel, BorderLayout.CENTER);


JPanel leftPanel = new JPanel(); // use you current layout

JPanel wrapper = new JPanel(new BorderLayout()); 

wrapper.add(leftPanel, BorderLayout.PAGE_START);

frame.add(wrapper, Border.LINE_START);

現(xiàn)在,包裝面板將遵循 leftPanel 的首選高度。因此,即使 rightPanel 更大,組件也不會(huì)被拉伸。


查看完整回答
反對(duì) 回復(fù) 2023-07-19
  • 1 回答
  • 0 關(guān)注
  • 149 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)