SDL Font
-
Hallo
ich habe in einer SDL Anwendung ein SFont erstellt.
Sprich einmal reingeladen und an verschiedene Stellen im Bild was mit diesem Font geschrieben. Jetzt habe ich u.a. eine "10" wo stehen, ich möchte jetzt die "10" hochzählen lassen. Dazu hab ich mir überlegt, das ich einfach die "10" überschreibe, aber ich sehe statt "11" eine "10" und eine "11". Sprich die 2te 1 von "11" ist über der breiten "0" von "10"Wie löse ich mein Problem? Muss ich für die veränderbaren Stellen einen eigenen Font erstellen? denn bei meinem Mausevent dann löschen ( FreeFont ) und dann da einen neuen erstellen, mit den passenen koordinaten und dann zu schreiben? Geht doch bestimmt auch einfacher.
Wie bring ich SDL bei das es nur was macht wenn die den linken Mausbutton drücke? ER reagiert immer, egal bei welchem Knopf.
Ich habe einen BreakPunkt gesetzt, wenn ich das Programm starte ist ja alles ok. Wenn ich jetzt einen Mausknopf drücke, dann springt er an die Stelle im BreakPunkt, jetzt kann ich beliebig oft F5 drücken. Warum? müsste er nicht den code in der if-Abfrage abarbeiten, und dann fertig sein? Warum springt er immer wieder an den Anfang der if-Abrage?
hier der Code
// code .... SDL_PumpEvents(); button = SDL_GetKeyState(NULL); if(SDL_GetMouseState(&mouseX, &mouseY)&&SDL_BUTTON(1)) { SDL_Rect mousepos; // hier der BreakPunkt //... more code in der if-Abfrage } // ... code nach der if-Abfrage
-
Die Maus kommt so..
while(SDL_PollEvent(&event)){ switch(event.type){ case SDL_MOUSEBUTTONDOWN:{ if(event.button.button == SDL_BUTTON_LEFT){ linkerButton=true; } break; } case SDL_MOUSEBUTTONUP:{ if(event.button.button == SDL_BUTTON_LEFT){ linkerButton=false; } break; } } }
..zum gewuenschten Resultat! Bei Bedarf nochmal fuer die rechte Maustaste.
cu steff