# Swing Größe von JTextField und JLabel ändern



## aschunk (1. Jul 2010)

Hallo,

ich habe einen Dialog mit Textfeldern und Labels. 

Ich möchte nun die Größe dieser Komponenten ändern. 

Ich habe es mit Dimension versucht, klappt aber nichts so richtig:


```
J
                JLabel lblName = new JLabel("Name: ");
	   JTextField txtName = new JTextField("");
	   JLabel lblNumber = new JLabel("Nummer:");
	   JTextField txtNumber = new JTextField("");
	   JButton btnSave = new JButton("Speichern");
	   Dimension dName = new Dimension(20,20);
	   Dimension dNumber = new Dimension(20,20);
	   txtName.setPreferredSize(dName);
	   txtNumber.setPreferredSize(dNumber);
```


----------



## VfL_Freak (1. Jul 2010)

aschunk hat gesagt.:


> ich habe einen Dialog mit Textfeldern und Labels.
> Ich möchte nun die Größe dieser Komponenten ändern.
> Ich habe es mit Dimension versucht, klappt aber nichts so richtig:
> 
> ...



hmm, was meinst Du denn mit "_Ich möchte nun die Größe dieser Komponenten ändern_" ?? 

Sollen die Felder größer sein als 20 x 20 oder sollen sie sich dynamisch ändern, wenn sie die Window-/Frame- oder was-auch-immer-Größe ändert ???:L

Gruß
Klaus


----------



## hansmueller (1. Jul 2010)

Hallo,

versuch es mal mit .setSize(Dimension).

Allerdings spielen die LayoutManager noch eine wichtige Rolle.
Da sind z. B. die MinimumSize und die MaximumSize der Komponenten unter Umständen ein wichtiger Faktor für die Größenberechnung. Kommt ganz auf den verwendeten LayoutManager an.

MfG
hansmueller


----------



## aschunk (1. Jul 2010)

Ich möchte zum Beispiel, dass das Textfield und das Label eine bestimmte Größe BreitexHöhe hat. 

Außerdem möchte ich zwischen den Komponenten noch etwas Platz lassen, also einen Freiraum einfügen, damit der Dialog nicht so gedrungen aussieht.


----------



## VfL_Freak (1. Jul 2010)

aschunk hat gesagt.:


> Ich möchte zum Beispiel, dass das Textfield und das Label eine bestimmte Größe BreitexHöhe hat.


entweder mit 

```
.setSize(Dimension);
```
oder auch 

```
.setMinimumSize( new Dimension(15,15) );
.setMaximumSize( new Dimension(30,30) );
```




aschunk hat gesagt.:


> Außerdem möchte ich zwischen den Komponenten noch etwas Platz lassen, also einen Freiraum einfügen, damit der Dialog nicht so gedrungen aussieht


etwa so:

```
pnBottom.add( btnA );
pnBottom.add( Box.createRigidArea(new Dimension(30,0)) );
pnBottom.add( btnB );
```

Gruß
Klaus


----------



## aschunk (1. Jul 2010)

Hallo,

ich habe das Problem eingegrenzt.

Es scheint am Layout Manager zu liegen. 

Wenn ich FlowLayout nehme, werden nur die Textfelder etwas zu klein dargestellt. 

Danke für den Hinweis.


----------



## aschunk (1. Jul 2010)

Hallo,

ich habe das Problem gelöst. 

Danke für die Hinweise


----------

