2010-11-28 11 views
0

パネルの最初の2つの要素を配置して問題私はそれがでどのようにあなたが表示されます:のJavaのSwingのGridBagLayout -

picture_how_it_is

これは、それがどのようにすべきである(私の中に下記のリンクを参照してくださいコメント):

ラベルは上になり、TabPaneは画面の残りの部分にすべての方向の余白を埋めなければなりません。

これはGridBagLayoutがでそれをレイアウトするためのコードです:あなたが知っている必要があり

// Layout --begin-- 
    this.mainPanel.setLayout(new GridBagLayout()); 
    GridBagConstraints gbc = new GridBagConstraints(); 

    // Layout:headLineLabel --begin-- 
    gbc.gridx = 0; 
    gbc.gridy = 0; 
    gbc.gridwidth = 1; 
    gbc.gridheight = 1; 
    gbc.fill = GridBagConstraints.HORIZONTAL; 
    gbc.ipadx = 0; 
    gbc.ipady = 0; 
    gbc.insets = new Insets(0, 10, 0, 0); 
    gbc.anchor = GridBagConstraints.FIRST_LINE_START; 
    this.mainPanel.add(this.headLineLabel, gbc); 
    // Layout:headLineLabel --end-- 

    // Layout:FestplattenreinigerGraphicalUserInterfaceTabbedPane --begin-- 
    gbc.gridx = 0; 
    gbc.gridy = 1; 
    gbc.gridwidth = 1; 
    gbc.gridheight = 1; 
    gbc.fill = GridBagConstraints.BOTH; 
    gbc.ipadx = 0; 
    gbc.ipady = 0; 
    gbc.insets = new Insets(10, 10, 10, 10); 
    gbc.anchor = GridBagConstraints.CENTER; 
    this.mainPanel.add(new FestplattenreinigerGraphicalUserInterfaceTabbedPane(), gbc); 
    // Layout:FestplattenreinigerGraphicalUserInterfaceTabbedPane --end-- 
    // Layout --end-- 

もの:

  1. FestplattenreinigerGraphicalUserInterfaceTabbedPaneがJTabbedPaneのを拡張します。
  2. 私はすべての制約を(実際のデフォルト値でも)練習するように指定しようとしました。
  3. 私がアンカーを賞賛するならば、レイアウトはそれがどのように残っているのですか?

この問題は何ですか?

THX非常に! (申し訳ありませんが、画像を直接投稿することはできません。新しいもののために1つだけのリンクです.-)。

+0

どのようにする必要があります:http://img832.imageshack.us/img832/6905/howitshouldbe.jpg – JavaHater

答えて

0

あなたは必要以上に重いものや重いものを残しました。だから、tabpane追加追加する前に:

gbc.weightx = 1.0; 
gbc.weighty = 1.0; 
+0

thx man。重みを設定した後、ウィンドウタブペインのサイズを変更したときに、ラベルがお互いに非常に大きなマージンを持っていました。今私は同じxとyのグリッドに入れて、今はとてもうまく動作します、ありがとう、もう一度私の夕方を作った! – JavaHater

+0

@JavaHater - あなたは少し少ないJavaを嫌いだと思っています:) – willcodejavaforfood

0

をそのようなことを行うには、正確なあなたのサンプルに、私はあなたがむしろのGridBagLayoutよりNetBeansの中で「フリーデザイン」を使用して、アプリケーションウィンドウのサイズを変更する機能を制限することができると思います。

0

GridBagLayoutを使用しないでください。 BorderLayoutを試してください。 NORTHのラベルとCENTERのタブ付きペイン。

縦型BoxLayoutです。

+0

申し訳ありませんが、thats a nono。この場合、私は練習のグリッドレイアウトをしたいと思っています... – JavaHater

+0

申し訳ありませんが、ここで何をしていますか? GridBagLayoutは非常に優れた学習方法です。 – willcodejavaforfood

+0

@ willcodejavaforfooc、投稿は「どこかを勉強しようとしているところ」とは言わなかった。私は常に問題を解決するための最も簡単なアプローチを使用します。この場合、GridBagLayoutは最も簡単な解決策ではありません。彼らは異なるアプローチを理解するために、ポスターを選択するのが好きです。多くの初心者は、何らかの場所からコードをコピーしたため、コードを一定の方法で作成しなければならないと盲目的に思っています。 – camickr