Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich habe mir eine SWT Oberfläche zusammen gebastelt und diese funktioniert auch soweit. Ich möchte, aber jetzt eine einzige Main Datei haben und sobald ich die Main Datei ausführe soll dann die SWT Oberfläche starten und später dann noch andere Klassen. Kann mir jemand sagen wie ich das hinbekomme ?
Müssen die Dateien auch alle in einer Package liegen oder geht das auch Package übergreifend ?
wenn du die swt oberfläche in einer eigenen klasse implementiert hast, musst du in der main-klasse einfach eine instanz davon erzeugen und in der main-methode diese dann mit
Java:
instanz.setVisible(true)
zur anzeige bringen.
falls du meinst, dass du die oberfläche in deiner main-klasse implementieren willst, dann musst du eigentlich nur deine main-klasse von JFrame erben lassen und deine ganzen komponenten als attribute hinzufügen und im konstruktor dann das layout usw. vornehmen... das wäre allerdings kein guter coding-style...
du musst das alles nicht im selben package erstellen, du musst dann nur das package, in der sich die swt oberfläche befindet in der main-klasse importieren
wenn in deiner layout-methode das ganze schon auf sichtbar gesetzt wird, musst du setVisible() nichtmehr aufrufen. es ist allerdings nicht so super, das ganze in einer methode zu erstellen.
ich würde das folgendermaßen machen:
Java:
public class swt extends JFrame{
//hier kommen die Instanzen der LayoutElemente hin
public swt(){
//hier wird das Layouting vorgenommen
}
}
Und in der Main-Klasse erstellst du dann eine Instanz von swt und setzt diese mittels setVisible(true) auf sichtbar und schon wird sie angezeigt
wenn in deiner layout-methode das ganze schon auf sichtbar gesetzt wird, musst du setVisible() nichtmehr aufrufen. es ist allerdings nicht so super, das ganze in einer methode zu erstellen.
ich würde das folgendermaßen machen:
Java:
public class swt extends JFrame{
//hier kommen die Instanzen der LayoutElemente hin
public swt(){
//hier wird das Layouting vorgenommen
}
}
Und in der Main-Klasse erstellst du dann eine Instanz von swt und setzt diese mittels setVisible(true) auf sichtbar und schon wird sie angezeigt
Gibt es denn keine möglichkeit das so zu lassen ? Weil mit JFrame hatte ich noch nichts gemacht, weil wir von der Schule aus das mit swt alles selbst machen sollen und da hatten wir nicht mit Jframe gearbeitet.
ups..mein fehler! ja also dass du hier keinen JFrame nutzen kannst,stimmt...ich hoffe ich hab dich da jetzt nicht allzu irre geführt :shock: ich hab die ganze zeit gedacht es geht um swing...
nunja,mit swt kenn ich mich leider nich aus