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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JFrame 和 JPanel 大小問題

JFrame 和 JPanel 大小問題

ITMISS 2021-11-03 14:49:51
我正在嘗試編寫包含 JPanel 的 JFrame。JPanel 中有一個 JTextField 數(shù)組。所以,我的 GUI 看起來像:-我沒有使用布局管理器,并已將 JFrame 和 JPanel 設(shè)置為 null。我正在手動調(diào)整這些組件的大小。您可以看到 JPanel 的右手部分被切掉了,即使我使用了與包含 JFrame 相同的大小。代碼如下所示:-我通過將 JTextField 數(shù)組中的列數(shù)乘以 JTextField 的寬度來計算 JPanel 所需的寬度。除此之外,還需要添加 JTextFields 之間的每個間隙的寬度(其中會有 (columnNumber - 1)),以及兩個邊框間隙。我已經(jīng)這樣做了,但是右手邊的邊界間隙被切斷了,正如你從圖中看到的那樣。如果我向 panelWidth 添加一些隨機數(shù)量,那么您可以在那里看到右手間隙,但我的問題是我在這里遺漏了什么?如果 JFrame 邊和 JPanel 大小相同,這應(yīng)該肯定有效,因為我也將它們打印出來,并且打印出來的數(shù)字相同。
查看完整描述

2 回答

?
繁花不似錦

TA貢獻1851條經(jīng)驗 獲得超4個贊

我希望行/列值的任意組合允許在每個 JTextField 之間保持恒定的垂直和水平距離,并為每個文本字段保持默認(rèn)大小。


GridLayout 允許您指定每個組件之間的水平/垂直間隙,并允許您控制網(wǎng)格的大小。


然后,您可以使用 GridLayout 在尊重網(wǎng)格大小的面板中包裝面板。


例如你可以這樣做:


JPanel grid = new JPanel( new GridLayout(...) );


JPanel wrapper = new JPanel( new GridBagLayout() );

wrapper.add(grid, new GridBagConstraints());


frame.add(wrapper, BorderLayout.CENTER);

如果您打包框架,網(wǎng)格面板將以首選大小顯示。


如果您調(diào)整框架的大小,網(wǎng)格面板將在包裝面板中保持居中。


查看完整回答
反對 回復(fù) 2021-11-03
?
一只名叫tom的貓

TA貢獻1906條經(jīng)驗 獲得超3個贊

該 GUI 的頂部非常適合網(wǎng)格布局,底部帶有“開始/取消”按鈕 - 流布局。將網(wǎng)格布局放在CENTER邊框布局中,將流布局放在 中PAGE_END,打包頂級容器(對于非裁剪,“正確大小”)并完成工作。

它可能最終看起來像這樣:

http://img1.sycdn.imooc.com//618231450001f2b103070120.jpg

查看完整回答
反對 回復(fù) 2021-11-03
  • 2 回答
  • 0 關(guān)注
  • 506 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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