Peeter
-
Gesamte Inhalte
400 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von Peeter
-
-
Originally posted by Jaraz
Ich bin zu blöd zum editieren.
WOW, das gibt von mir noch mal ein fettes :uli von mir!
if(e.getSource().equals(btn01))
So, hier nochmal!
-
DAS ist wirklich gut. :uli
Geht. Ich hab´s mal schnell getestet.
-
Originally posted by Jaraz
Kleine Bemerkung am Rande, Objekte sollte man mit .equals vergleichen.
if(btn.equals(btn01)) System.out.println("Button 01 gedrueckt.");
Gruß Jaraz
Verdammt. Natürlich hast du recht.*schäm*
Aber funktionieren tut´s trozdem.:mod:
Peet
-
Besser ist natürlich das hier!
JButton btn01 = new JButton("Button 01"); JButton btn02 = new JButton("Button 02"); JButton btn03 = new JButton("Button 03"); btn01.addActionListener(action); btn02.addActionListener(action); btn03.addActionListener(action); private final AbstractAction action = new AbstractAction() { public void actionPerformed(ActionEvent ae) { JButton btn = (JButton)ae.getSource(); if(btn == btn01) System.out.println("Button 01 gedrueckt."); else if(btn == btn02) System.out.println("Button 02 gedrueckt."); else if(btn == btn03) System.out.println("Button 03 gedrueckt."); }};
Der Rest für den MouseListener ist dann äquivalent.
-
Also du hast ein EVENT e.
Dann holst du dir die Source von dem Event. (evtSource = e.getSource)
Dann überprüfst du, ob die Source überhaupt eine Instanz von Button ist.
(
if(evtSource instanceOf Button) {// hier geht´s dann weiter}
)
Dann castest du die "evtSource" in einen Button. (btnButton = (Button) evtSource))
So, und von dem kannst du dir z.B. den Text geben lassen. Darauf kannst du wieder abfragen und bekommst so deinen SubmitButton raus.
OK?
-
Originally posted by ETnachHause
Ich glaube er meinte auch die MouseListener.
Du schreibst einen MouseListener, addest ihn zu Deinen Komponenten und kannst dann im MouseEvent mit getSource() oder so ähnlich abfragen, von welcher Deiner Komponenten dieses Event kommt und dementsprechend handeln.
Genau DAS hatte ich gemeint. Nur als Beispiel hatte ich dann nen ActionListener genommen.
MouseEvent.getSource liefert dir ein Object, welches du dann entsprechend casten kannst. Und darauf machst du deine Abfrage.
-
Naja, du könntest auf die Source abfragen und den dementsprechendden Code ausführen.
z.B. Du hast mehrere Buttons und addest auf diese nur einen ActionListener. Von dem Event welches du übergibst kannst du dir die Source geben lassen und hast den entsprechenden Button.
-
-
Vielleicht hilft dir auch das weiter!
Peet
PS: Das es noch Leute gibt, die nichts mit SQUID anzufangen wissen.
-
Um genau zu sein hat er 65535 Ports.
-
Kannst du mal bitte den Quellcode posten? Oder zumindest einen Teil davon, und zwar den HyperlinkListener selbst. Ich möchte mir den mal genauer anschauen.
Gibt´s sonst irgendwelche Fehlermeldungen/Exceptions?
MfG Peet
-
JDBC Treiber
in Java
Ja, stimmt so. Ich würde aber nur ne "SQLException" auffangen. Nicht ALLE "Exceptions".
Warum müssen wir dir das eintrichtern?? :confused:
Ein bisschen Eigeninitiative ist bei Java schon gefragt!
MfG Peeter
-
JDBC Treiber
in Java
Du hast dein "try-catch" vergessen.
Füge alles, was eine SQLException werfen kann in den "try"-Block und fange dann die evtl. entstehende SQLException im "catch"-Block.
Weißt du wie sowas geht??
MfG Peeter
~~~ edit ~~~
Verdammt, zu langsam! :uli
-
Ich rate dir aber dir das mal so bald wie möglich anzutun! Ist wichtig für klaren Quellcode nach Sun-Konventionen. Macht alles lesbarer und entsprechend konformer.
Viel Spaß beim lesen!
MfG Peeter
-
"==" kannst du überall(bei den Primitiv-Datentypen) verwenden. Halt nur nicht bei Strings. Strings sind da wieder ne Ausname. Von String gibt es keinen Primitiv-Datentyp. Deswegen der Unterschied zu C++.
MfG Peeter
-
Nee, Klassen immer mit Großbuchstaben anfangen.
Deswegen fängt dein Name der Klassendatei auch mit nem Großbuchstaben an!
Wie schon mein Vorredner gesagt ha: Siehe SUN-Code-conventions! :mod:
-
Folgendes. Entweder du nimmst dein Verzeichnis "c:\java" in den Classpath auf und rufst dann die Klasse mit "java -classpath c:\java hallo" auf
ODER
du wechselst einfach in das Verzeichnis c:\java und rufst die Klasse ganz normal ohne den Classpath auf. "java hallo"!
Aber denk dran bei deiner Datei auf Groß- und Kleinschreibung zu achten! Deine Klasse heißt "Hallo" und deine Java-Datei nur "hallo.java" Bennen die "hallo.java" in Hallo.java" um.
MfG Peeter
-
Gut, dann bin ich ja beruhigt!
-
jframe.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
Siehe JDoc - javax.swing.JFrame!!
Mal die Doku lesen.
Oder meinst du etwas anderes?
MfG Peeter
-
Versucht´s erst mal mit richtig coden. Einfach nen Texteditor nehmen und los geht´s. So lernt man am besten und am schnellsten!!
-
Dazu musst du alle Jar´s in ein Verzeichis entpacken. Dieses Verzeichnis gibst du dann im classpath an.
-
Ansich get das mit get() und set() Methoden besser. Da ist der objektorientierte Ansatz besser!!
-
Oh, dann etwas einfacher.
public class B
{
public static int test = 555;
.
.
}
public class A
{
.
.
private int wert = B.test;
// Damit hat "wert" den Wert von "test"
}
Und bei get() und set() Methoden sieht´s so aus:
Erst mal wie oben, nur das dann noch 2 Methoden (in der Klasse zu jeder Variablen dazu kommen. Eine setTest() und eine getTest().
public void setTest(int test){
this.test = test;
}
public int getTest(){
return test;
}
Peeter
~~~ edit ~~~
Verdammt, zu langsam. Schön, wenn´s geklappt hat!! Besser ist´s aber wenn du mit get() und set() Methoden arbeitest!!
-
Also du definierst in Klasse B eine Variable "public int test = 999;".
Dann kannst du in Klasse A mit "int klasseAInt = B.test;"
Damit hat klasseAInt den Wert von test der Klasse B.
Wenn mich jetzt nicht alles täuscht müsste das mit dem setzen neuer Werte genauso gehen.
Wenn du aber noch kein Objekt der Klasse B erzeugt hast, oder erzeugen willst, dann mußt du natürlich die Varablen in Klasse B "static" deklarieren.
Ansonsten würde ich mit get() und set()-Methoden arbeiten.
Peeter
pro komponente ein listener?
in Java
Geschrieben
Das finde ich aber trotzdem besser. Weniger Quellcode.