000
11.04.2009, 16:58 Uhr
öni
|
Hallo,
ich versuche zur Zeit ein BlackJack in C zu implementieren und habe Probleme mit der Kartenanzeige. Manchmal werden meine Karten einfach nicht angezeigt, was ich mir allerdings nicht erklären kann, da der Fehler sehr sporadisch auftritt, die Chance steht zur zeit fast 50:50. Ich habe das ganze schon gedebuggt, er läuft durch die Funktion allerdings zeigt er kein Bild an, was mir allerdings nicht sehr viel weiterhilft
Hier sollten die Bilder angezeigt werden
C++: |
BeginPaint (hWnd, &ps) ; hdcMem = CreateCompatibleDC (hdc) ; SelectObject (hdcMem, Karte[zufall]) ; BitBlt (hdc, x, 400 , karte[zufall].bmWidth, karte[zufall].bmHeight, hdcMem, 0, 0, SRCCOPY);
|
Hier werden die Bilder vorgeladen das sie später nur noch angezeigt werden müssen.
C++: |
for( k=1,j=0; k<14; k++) //bilder sind wie folgt benannt, 11,12,13,14,21,22,23,24,31,32...... for ( i=1; i<5; i++,j++ ) { //Pfad wird wieder geleert sprintf(pfad, "\0");
strcpy (pfad,"C:\\Dokumente und Einstellungen\\meinOrdner\\Eigene Dateien\\Visual Studio 2008\\Projects\\BlackJack\\karten\\"); sprintf(&text, "%d%d.bmp", k,i); *pfad = strcat (pfad, text); pfad[0] = 'C';
Karte[j] = (HBITMAP)LoadImage(0,pfad,IMAGE_BITMAP, 75, 100, LR_DEFAULTSIZE|LR_LOADFROMFILE|LR_CREATEDIBSECTION); if(Karte[j]==NULL) { sprintf(text,"Das Bild "); *text = strcat(text, pfad); *text = strcat (text, "konnte nicht geladen werden"); MessageBox(hWnd,pfad,"Error",0); } GetObject (Karte[j], sizeof (BITMAP), &karte[j]) ; }
|
Dieser Post wurde am 11.04.2009 um 16:59 Uhr von öni editiert. |