# Frame in Main Starten



## Tiega (18. Apr 2010)

Hey leute,

ich hab da ein kleines Problem. Und zwar habe ich mir mit dem Visual Editor ein kleines Login Frame gebastelt. So in Eclipse startet das auch alles mit NetBeans. Wenn ich das jetzt als Ausführbare Datei speichern will brauch ich ne Main Methode. 


```
import javax.swing.*;
import java.awt.*;
import javax.swing.JTextField;
import java.awt.Rectangle;
import javax.swing.JPasswordField;
import javax.swing.JButton;
import java.awt.Dimension;
import java.awt.Color;
import javax.swing.JLabel;
import javax.swing.JDesktopPane;
import javax.swing.JCheckBox;

public class LoginFrame extends JDesktopPane {
	
	private static final long serialVersionUID = 1L;
	private JTextField jTextLogin = null;
	private JPasswordField jTextPassword = null;
	private JButton jLoginButton = null;
	private JButton jRegisterButton = null;
	private JLabel jPasswortLabel = null;
	private JLabel jLoginLabel = null;
	private JLabel status = null;
	RegisterFrame registrierung = new RegisterFrame();
	
	public void LoginFrame() {
		
		initialize();
		registrierung.setVisible(false);
	}

	.......usw
```

Soo wenn ich jetzt eine Main Methode anlege dann den konstruktor ausführe passiert nichts....


```
}
	
	public static void main(String[] args) {
		LoginFrame();
	}
	
}
```

oder wenn ich es als neues Objekt anlege mit 


```
LoginFrame Test = new LoginFrame();
```

passiert auch nichts 

es kommt auch keine Fehlermeldung.
Kenn mich mit Grafischer Oberfläche noch nicht wirklich aus.


----------



## eRaaaa (18. Apr 2010)

Tiega hat gesagt.:


> Kenn mich mit Grafischer Oberfläche noch nicht wirklich aus.



Das hat mit GUI nichts zu tun, ein Objekt erstellt man mit new... 
Also 
	
	
	
	





```
new LoginFrame();
```
 /edit: ah, das hast du ja im 2.Versuch, dann liegts nur an, siehe hier:
|
v
Und ein Konstruktor hat kein Rückgabewert,*auch nicht void!*


----------



## Tiega (18. Apr 2010)

ich hab jetzt das void weggemacht und nochmal so versucht:


```
public static void main(String[] args) {
		LoginFrame Test = new LoginFrame();
		Test.setVisible(true);
	}
```

geht aber auch nicht

EDIT: Und das void hatte ich nur probeweise hingeschrieben weil mir die ideen ausgingen *SCHÄM*


----------



## eRaaaa (18. Apr 2010)

Ah, hab jetzt erst gesehen, dass Logi*Frame* ja gar kein Frame ist, sondern ein JDesktopPane ^^
Was ist mit deiner Fensterklasse? Also ein JFrame o.ä. ? Wo hast du die erzeugt? Oder ist genau das, das Problem, das es die gar nicht gibt? =)


----------



## Tiega (18. Apr 2010)

Wie ganz oben im Code auch steht ist es ein JDesktopPane. Ja genau da ist das Problem 
Im Eclipse startet das mit NetBeans... aber wenn ich es exportieren will brauch ich ja ne Main und ich hab kein plan wie ich das jetzt machen soll, google und probier schon ne Woche aber wenn man den Fehler nicht kennt weiß man nicht wie man suchen soll

EDIT:

hier mal die in initialize funtion, vllt ist dort ja der Fehler.


```
private void initialize() {
		registrierung.setBounds(new Rectangle(5, 125, 303, 212));
		status = new JLabel();
		status.setBounds(new Rectangle(60, 105, 121, 16));
		status.setText("");
		jLoginLabel = new JLabel();
		jLoginLabel.setBounds(new Rectangle(15, 15, 76, 16));
		jLoginLabel.setText("Login:");
		jPasswortLabel = new JLabel();
		jPasswortLabel.setBounds(new Rectangle(14, 45, 77, 15));
		jPasswortLabel.setText(" Passwort:");
		this.setSize(316, 347);

		this.add(getJTextLogin(), null);
		this.add(getJTextPassword(), null);
		this.add(getJLoginButton(), null);
		this.add(getJRegisterButton(), null);
		this.add(jPasswortLabel, null);
		this.add(jLoginLabel, null);
		this.add(status, null);
		this.add(registrierung, null);
	}
```


----------



## eRaaaa (18. Apr 2010)

Naja, wie gesagt, damit was angezeigt wird, brauchst du erst einmal ein Fenster:
Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 16.2 Fenster unter grafischen Oberflächen

Wie das ganze dann zusammen mit einem JDesktopPane+IFrame genutzt werden kann, zeigt ein Beispiel auf

Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 16.20 JRootPane und JDesktopPane

Ansonsten sind auch die Tutorials von sun zu empfehlen:
How to Use Internal Frames (The Java™ Tutorials > Creating a GUI With JFC/Swing > Using Swing Components)


----------

