SWT OOP bei SWT

JStickman

Mitglied
Wie kann ich in SWT es so wie bei Swing machen ,sodass eine Klasse von der Klasse Frame bzw. Shell erbt.
Ich wusste nicht recht was ich da googlen sollte.;:)noe:

Ich freu mich auf jeden Beitrag:D:D:D:D:D:D:D:D
 

JStickman

Mitglied
War ein bischen doof formuliert .
Ich meine ,dass wenn ich in der Main ein neues Objekt von einer Klasse mache ,dass das Objekt sozusagen ein Frame ist und ich Methoden für das Objekt bzw den Frame schreiben kann.

Versteht ihr???
 
G

Gast2

Gast
Favor object composition over class inheritance

Trotzdem erben die meisten von JFrame um eine Frame zu erstellen und wenn man eine eigene Komponente oder Panel macht erbt man auch von JComponent oder JPanel... In SWT erbt man doch von Composite wenn man eine eigene Komponente erstellen will. Also kann man die Aussage nicht so allgemein treffen
 

Wildcard

Top Contributor
Trotzdem erben die meisten von JFrame um eine Frame zu erstellen und wenn man eine eigene Komponente oder Panel macht erbt man auch von JComponent oder JPanel.
Wenn man eigene Komponenten entwickelt ist es auch ok von JPanel oder Composite zu erben. Von Shell oder JFrame zu erben macht hingegen nur sehr selten Sinn.
Bei SWT Shell steht zum Beispiel explizit in der API Doc:
IMPORTANT: This class is not intended to be subclassed.
 
G

Gast2

Gast
Wenn man eigene Komponenten entwickelt ist es auch ok von JPanel oder Composite zu erben. Von Shell oder JFrame zu erben macht hingegen nur sehr selten Sinn.
Bei SWT Shell steht zum Beispiel explizit in der API Doc:

Bekommt man ja auch eine Expetion wenn man von Shell erbt, genauso wie bei den meisten widget de native sind oder? Bei Swing ist das ja anders um einen eigenen Button zu erstellen kann ich von JButton ableiten und dessen Model und Events benutzen und je nachdem anders rendern...

Aber ich denk viele Programm haben als Einstiegpunkt ein Hauptframe das von JFrame erbt... Zumindest in Swing!!!
 

JStickman

Mitglied
Also:

In der Main:
Java:
Shell fenster = new Shell();

Und in der Komponentenklasse:
Java:
class Component extends Composite

Und dann ist das Objekt dieser Klasse beispielsweise ein Button ,oder wie???
 
G

Gast2

Gast
Java:
class MyButton extends Composite{ 

Button control;

}

Dann ist es ein Button schau dir die Nebula Projekte an und orientier dich am besten an denen.
Nebula Project
 

Sonecc

Gesperrter Benutzer
vllt solltest du dir erstmal einfache tutorials zu swt durchlesen
Davon gibts genug über google.
Ich vermute mal, dass du nämlich keine Ahnung hast, was du da tust
 

JStickman

Mitglied
Naja ich verstehe schon was gemeint ist ,aber mit meiner Einstufung habe ich mich etwas ueberschaetzt.

Danke SirWayne fuer den Tipp und an Sonecc: Ich werde mir in der Tat noch ein paar Turtorials und Referenzen ansehen ,damit ich hier im Forum mithalten kann.

Danke
 

Neue Themen


Oben