Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
magynhard Super JLI'ler
![](http://home.arcor.de/_matt/tmp/2007-09-27_003_bl_192x.jpg)
Anmeldedatum: 26.04.2003 Beiträge: 461 Wohnort: Wild durch die Welt ;-) Medaillen: Keine
|
Verfasst am: 22.05.2003, 13:20 Titel: CallBack-Function mit Switch und Pinsel |
|
|
Ich probiere gerade mal wieder etwas mit den neu gelernten Sachen aus.
Kapitel 12 GDI - Seite 235/236
Ich habe das Programm mit den Kästchen hinklicken mit dem hinzufügen der angegebenen CallBack-Fuktion erstellt, es funktioniert natürlich einwandfrei.
So, nun wollte ich das Viereckchen farbig machen, was ich mit einem Pinsel gelöst habe.
Doch das gefällt dem Compiler ganz und gar nicht
HelloWindows.cpp(276) : error C2360: initialization of 'OrangePen' is skipped by 'case' label
Ich konnte den Fehler "beheben" indem ich den
case WM_LBUTTON:
Absatz einfach als letzte case-Abfrage, also an letzter Stelle der Switch-Anweisung plaziert habe.
Ok, nun funktioniert es, aber ich möchte den Pinsel aber auch in weiteren case Abfragen verwenden, was aber nicht funktioniert, weil ich dann wieder diese Meldung aufgetischt bekomme - auch wenn "eigentlich" nichts falsch ist.
Was mache ich "falsch" ?
Muss ich von Switch auf If-Abfragen ausweichen?
Oder .. ?
![Rolling Eyes](images/smiles/icon_rolleyes.gif) |
|
Nach oben |
|
![](templates/subSilver/images/spacer.gif) |
Hazel JLI MVP
![JLI MVP JLI MVP](http://www.jliforum.de/images/mvp.gif)
![](http://farm4.static.flickr.com/3096/2631167487_7389a786a5_o.jpg)
Alter: 39 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 22.05.2003, 13:54 Titel: |
|
|
Vereinbare die Variable innerhalb der switch-Anweisung aber außerhalb der einzelnen Cases, so sollte es klappen... wenn nicht packst du sie vor die switch-Anweisung. Soweit ich weiß, darf man Variablen nicht in Case-Blöcken vereinbaren. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
![](templates/subSilver/images/spacer.gif) |
Jörg JLI MVP
![JLI MVP JLI MVP](http://www.jliforum.de/images/mvp.gif)
![](http://mitglied.tripod.de/messiahzone/jesus/kiste.gif)
Anmeldedatum: 19.07.2002 Beiträge: 182 Wohnort: Siegen/NRW Medaillen: Keine
|
Verfasst am: 22.05.2003, 13:58 Titel: |
|
|
Keine Angst, du kannst bei switch bleiben. Um das Problem zu beheben musst du einfach innerhalb des case-Labels einen Block aus geschweiften Klammern machen und darin die Variable deklarieren:
Code: | switch(..)
{
case ...:
..
case ...:
{
int abc;
...
}
break;
case ...:
...
}
|
_________________ www.messiahzone.de.vu |
|
Nach oben |
|
![](templates/subSilver/images/spacer.gif) |
magynhard Super JLI'ler
![](http://home.arcor.de/_matt/tmp/2007-09-27_003_bl_192x.jpg)
Anmeldedatum: 26.04.2003 Beiträge: 461 Wohnort: Wild durch die Welt ;-) Medaillen: Keine
|
Verfasst am: 22.05.2003, 14:17 Titel: |
|
|
Also das mit dem außerhalb Switch hab ich auch mal ausprobiert, nur leider geht dabei langsam die Übersicht verloren.
Das mit den Klammern funktioniert wunderbar.
Danke an euch beide für eure Hilfe ![Very Happy](images/smiles/icon_biggrin.gif) |
|
Nach oben |
|
![](templates/subSilver/images/spacer.gif) |
|