AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Java Event-Verarbeitung

Ein Thema von yogie · begonnen am 22. Nov 2011 · letzter Beitrag vom 24. Nov 2011
Antwort Antwort
yogie

Registriert seit: 11. Sep 2003
Ort: bei Goslar
213 Beiträge
 
Delphi 6 Professional
 
#1

Java Event-Verarbeitung

  Alt 22. Nov 2011, 12:12
Von "außen" erzwungen muß ich mich neuerdings mit Java beschäftigen.
Ich habe genauso begonnen wie vor langer Zeit mit Delphi, also
ein Fenster ein Button und ein Edit, nur mal so zum "spielen".

Dann ging es an die Ereignisbehandlung und ich konnte nicht glauben,
was man da so alles machen muß/soll. Zugegeben ich habe noch nicht
wirklich Zeit investiert, aber im Moment bin ich schon etwas irritiert.

Hat jemand einen Tip für ein gutes Tutorial ?

Bleibt bei Delphi, wenn ihr könnt!!
Kompatibilität ist ein Euphemismus für n i c h t einhunderprozentige Austauschbarkeit
http://b-und-l-service.de/
  Mit Zitat antworten Zitat
blackfin
(Gast)

n/a Beiträge
 
#2

AW: Java Event-Verarbeitung

  Alt 22. Nov 2011, 12:26
Was für einen Event-Handler möchstest du denn erstellen?
Wenn du etwas genauer wirst, kann evtl. jemand die Delphi- und Java-Lösung gegenüberstellen.
  Mit Zitat antworten Zitat
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Java Event-Verarbeitung

  Alt 22. Nov 2011, 13:33
Spannend wird es doch erst, wenn du aus einem anderen Thread auf die UI willst

"Java ist auch nur eine Insel" ist IMHO online verfügbar und für Anfänger eigentlich ganz brauchbar
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#4

AW: Java Event-Verarbeitung

  Alt 22. Nov 2011, 13:40
Dann ging es an die Ereignisbehandlung und ich konnte nicht glauben,
was man da so alles machen muß/soll. Zugegeben ich habe noch nicht
wirklich Zeit investiert, aber im Moment bin ich schon etwas irritiert.
Im Prizip funktionieren 'Events' in Java so:

Anstelle eines Eventhandlers (also einer Methode, die eine bestimmte Signatur erfüllt), übergibst Du ein Objekt, das ein bestimmtes Interface implementiert (das eine Eventhandler-Methode mit passender Signatur vorgibt).

Du hast also im Prinzip nur den Zwischenschritt über die Klasse zusätzlich.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
yogie

Registriert seit: 11. Sep 2003
Ort: bei Goslar
213 Beiträge
 
Delphi 6 Professional
 
#5

AW: Java Event-Verarbeitung

  Alt 22. Nov 2011, 16:06
Erstmal danke für die Antworten. Das steht alles noch ganz am Anfang.
Es gibt noch keine wirklich konkrete Anwendung. Ich bin auch durchaus
lernbereit, ob es was nützt, sei mal dahingestellt.

Meiner Meinung nach sollte eine (neue) Programmiersprache die Bearbeitung
von Standardaufgaben (siehe Event-Behandlung) für den Anwender so einfach/
transparent wie möglich machen. Bei der Vorgehensweise in Java ist da für mich
erstmal nicht der Fall.

Schönen Abend noch...
Kompatibilität ist ein Euphemismus für n i c h t einhunderprozentige Austauschbarkeit
http://b-und-l-service.de/
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.004 Beiträge
 
Delphi 2009 Professional
 
#6

AW: Java Event-Verarbeitung

  Alt 23. Nov 2011, 12:02
Meiner Meinung nach sollte eine (neue) Programmiersprache die Bearbeitung
von Standardaufgaben (siehe Event-Behandlung) für den Anwender so einfach/
transparent wie möglich machen. Bei der Vorgehensweise in Java ist da für mich
erstmal nicht der Fall.
Gute kostenlose IDEs, die auch Swing Oberflächen (mit Eventhandlern) erstellen können, gibt es für die Java Platform wie Sand am Meer (NetBeans, IDEA, Eclipse mit WindowBuilder oder hier WindowBuilder) - DFMs in Delphi schreibe ich auch nur ungern mit Notepad - (deja vu

Dass Swing in weiten Bereichen umständlicher ist als nötig, sei unbestritten. Dennoch gibt es sehr viele kommerzielle Anwendungen, die komplett auf Swing basieren.

JavaFX 2 könnte aber je nach Anwendungstyp eine Alternative darstellen, die zeitgemäßer ist (Hardware-Rendering):

http://www.netzwelt.de/news/88783-ja...en-source.html
Michael Justin
habarisoft.com

Geändert von mjustin (23. Nov 2011 um 12:18 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#7

AW: Java Event-Verarbeitung

  Alt 23. Nov 2011, 12:29
Meiner Meinung nach sollte eine (neue) Programmiersprache die Bearbeitung von Standardaufgaben (siehe Event-Behandlung) für den Anwender so einfach/
transparent wie möglich machen.
Naja.. 'neu' ist bei Java relativ. Das Zeug ist von 1995
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#8

AW: Java Event-Verarbeitung

  Alt 23. Nov 2011, 13:42
Meiner Meinung nach sollte eine (neue) Programmiersprache die Bearbeitung
von Standardaufgaben (siehe Event-Behandlung) für den Anwender so einfach...
Wie der Feuervogel schon sagte: Java ist nicht neu. Und das Eventhandling ist in Java nicht der Bringer. Das sieht man nicht nur so, wenn man von Delphi kommt, das sehen auch die Hardcore-Javaisten so. Such mal in JavaForen danach. Dort lunscht man dann meist zu .Net rüber und beneidet die C#-Entwickler mit ihren Delegates. Und zudem hofft man mit jeder neuen Java-Version. Aber IMHO hat die 7er diesbezüglich nichts geändert.

Ich bin zwar kein Java-Fachmann, aber so sollte es gehen:
Interface deklarieren
Code:
public interface SimpleEvent {
   public void event(int NR) ;

}
Interface implementieren:
Code:
public class Foo implements SimpleEvent{
   

   /* (non-Javadoc)
    *  Diese Klasse kann noch vieles anderes machen....
    */

   public void event(int NR) {
            system.out.print("ich bin gefeuert mit " + NR);
   }
}
Klasse, die Event feuert:
Code:
public class ichMelde {
        private SimpleEvent simpleEvent; /* Feld zum merken des Events*/
       
        public void setEvent(SimpleEvent e) {
             simpleEvent=e;
        }
       
        void fire() {
            simpleEvent.event(42);
        }
}
und wie du jetzt siehst, kannst du bei ichMelde.setEvent eine Klasse (hier: Foo) angeben, die ein Ereignis behandelt und das entsprechende Interface auch implementiert.

Meist wird zu einem Interface auch noch eine leere Klasse erstellt (die also alle Methoden des Interfaces implementiert, aber ohne was zu tun:  begin end; halt). Diese Klasse kann man dann zum aufbauen einer anonymen Methode verwenden. Auch einm häufig gesehenes Beispiel für einen Event-Handler, wenns mal "schnell" gehen muss.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.

Geändert von sirius (23. Nov 2011 um 13:59 Uhr)
  Mit Zitat antworten Zitat
yogie

Registriert seit: 11. Sep 2003
Ort: bei Goslar
213 Beiträge
 
Delphi 6 Professional
 
#9

AW: Java Event-Verarbeitung

  Alt 24. Nov 2011, 12:28
Ich hatte nicht damit gerechnet hier ins Grundsaätzliche zu geraten.
Aber trotzdem danke für die Anregungen. Wie schon gesagt, bin ich wohl
durch Delphi ein wenig verwöhnt. (Anfang mit D1 unter WIN3.11).

Aber die Welt dreht sich weiter, man wird sehen. Zu Weihnachten
gibt es dann wohl erstmal ein Buch über Java.
Kompatibilität ist ein Euphemismus für n i c h t einhunderprozentige Austauschbarkeit
http://b-und-l-service.de/
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz