Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » eigenes Ereigniss

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
16.04.2005, 22:55 Uhr
~SwordMaster_xx
Gast


Hallo Leute,

ich schreibe mir gerade eine eigene Klasse (keine MFC klasse sondern eine "Allgemeine Klasse" wie es der assistent von VC++ so schön ausdrückt) :-).

Jedenfalls möchte ich in meiner klasse ein Ereigniss programmieren.

Weiß jemand wie man selbst Ereignisse programmiert?

Oder weiß jemand ein Gutes Tutorial wo ein kleines Beispiel erklärt ist?

Danke swordmaster
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
17.04.2005, 13:13 Uhr
Spacelord
Hoffnungsloser Fall


Erklär mal genauer was du unter einem Ereignis verstehst.
Dir stehen benutzerdefinierte Nachrichten und echte Events zur Verfügung.
Was du davon nimmst hängt davon ab was du konkret vorhast.
Eventuell ist auch das Observer Pattern für dich von Interesse.....

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
17.04.2005, 16:15 Uhr
~SwordMaster_xx
Gast


Hallo

Danke für deine antwort.
Ich glaube dass ich ein echtes Event brauche, und zwar möchte ich folgendes erreichen.

Beispiel:

Ich habe z.B. eine Klasse CRechteck mit den Methoden "SetBreite" "SetHöhe" "MacheQuadrat".

ich möchte dass diese Methoden am schluss ein Ereigniss (z.B. SizeChanged) aufrufen.

Wenn man jetzt ein Objekt von der Klasse CRechteck macht, dann kann man auf dieses Ereigniss reagieren.

Glaube dass ich für das echte Events brauche, nur ich weiß halt leider nicht wie ich dass in c++ machen kann.

Danke SwordMaster
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
17.04.2005, 17:18 Uhr
Spacelord
Hoffnungsloser Fall


"Echte" Events sind eher zur Synchronisation von Threads gedacht.
Wer soll denn auf das Event SizeChanged reagieren?

Das hört sich eher nach nem Fall für das Observer Pattern an.
Dafür brauchst du 2 Schnittstellen
1. Observer
-hier musst du eigentlich nur eine Methode definieren.Und zwar eine die auf das Event reagiert. z.B. OnNotification

2. Observeable
Diese Schnittstelle enthält 3 Methoden addObserver(Observer os),removeObserver(Observer os) und notifyObservers.
In einem vector kannst du dann alle Objekte die auf die Änderung des Rechtecks(dass die Observable Schnittstelle implementiert) verwalten.Im Falle einer Änderung rufst du notifyObservers auf,wo du den vector durchläufst und an jedes Object die Nachricht OnNotification sendest woraufhin diese dann mit der entsprechenden Methode aus der Observer Schnittstelle reagieren.

Um mögliche unterschiedliche Events zu behandeln könntest du noch ne Klasse Event schreiben die nähere Informationen über die Art des Events enthält.
Dann kannst du ne Instanz davon als Parameter der OnNotification Nachricht mitgeben.
Somit hätten die Observer die Möglichkeit Details über das Event zu bekommen und gegebenenfalls unterschiedlich zu reagieren.

Ich hoffe das war so halbwegs verständlich.

Kannst ja mal im Internet danach suchen.

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: