簡體   English   中英

如何重新創建使用 netbeans 自動生成代碼制作的 Swing gui 的布局?

[英]How do I recreate the layout of the swing gui made with netbeans autogenerated code?

我已經在 Netbeans GUI Builder 中做了這個:

在此處輸入圖片說明

但它充滿了自動生成的代碼,我不知道在哪里放置我的額外代碼,所以我想將其更改為手動代碼。 我嘗試了BorderLayout並且我也開始學習GridBagLayout但我仍然無法復制它。 我在這里被困了一個星期,這個月我需要通過我的 Java 系統。

  • 你能幫我編碼嗎?
  • 我應該使用哪些布局來手動復制 GUI?
  • 如何在不使用 [ setColumns ] 或 [ setRows ] 的情況下輕松更改textarea的大小(像素)?

我所能幫助你的是你可以使用BorderLayout作為你的框架的布局。

帶有Panel的黑屏將位於BorderLayout中心的BoxLayout更多信息)中。 Panel將包含黑屏下方的元素,您可以使用GirLayout (除了textarea下方的兩個按鈕)

文本區域和BoxLayout東部的兩個 Buttons 並放置在主BorderLayout的東部

在此處輸入圖片說明

(抱歉畫得不好,但我希望它可以幫助您更多地了解布局的結構)

查看此處以了解有關布局的更多信息。

對於 textarea,是您要找的嗎?

new JTextArea(WIDTH, HEIGHT);

不使用setColumnssetRows創建 textarea

祝你好運。

如何在不使用 [setColumns] 或 [setRows] 的情況下輕松更改文本區域的大小(像素)?

您不應該嘗試這樣做。

行/列方法旨在為文本區域提供提示,以便它可以計算自己的首選大小。

行/列在那里讓你很容易。

我也開始學習GridBagLayout

這可能是一個很好的起點。 例如,我看到一個 2 x 2 的網格:

  1. 黑色區域 - 這將垂直和水平增長
  2. 文本區域 - 這將垂直增長
  3. 黑色區域下的按鈕 - 固定大小
  4. 文本區域下的按鈕 - 水平增長

然后對於區域 3 和 4,您將使用面板來固定組件。 這些面板可以使用其他布局管理器。

區域 3 可能是一個BoxLayout 它還可能包含一個面板,該面板對兩個組合框使用GridLayout

區域 4 可能是GridLayout

關於布局管理的要點是您可以使用不同的布局管理器嵌套面板。

閱讀有關布局管理器的 Swing 教程以獲取更多信息和工作示例

您可以將面板的布局設置為null

然后你有機會通過.setBounds()放置和調整每個元素的大小,

這是很多工作,但是這樣您就可以根據需要設計您的 gui。

例子:

JPanel panel = new JPanel();
panel.setLayout(null);
JButton button = new JButton("hit me");
button.setBounds(10, 10, 50, 20); //(xpos,ypos,width,height)

暫無
暫無

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

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