Button Dynamisch -> BN_CLICKED

Mahlzeit...

in Zeile

RegisterPLCSeite [RegisterPLCAktuelleSeite] -> Create (IDDRegPLCSeiten [RegisterPLCAktuelleSeite], this) ; // Neuen Dialog erstellen

Wieso steht dann eigentlich Benutzerdefinierten Haltepunkt aufgerufen
Ich hab doch keinen angelegt?

Gruß
 
Teste mal, ob das Fenster tatsächlich schon "tot" ist:
C++:
if( ::IsWindow(RegisterPLCSeite [RegisterPLCAktuelleSeite]->GetSafeHwnd()) )
{
    // ... Mich gibt es noch
}

Gruß
MCoder
 
Hallo,

hab ich ausgetestet... Fenster gibt es nicht mehr!
Ich hab auch noch eines festgestellt!
Ich ändere in den CStatic's Zyklisch die Bitmaps,
funktioniert einwandfrei aber nach ca. 30 sec.
(je nach dem wie schell die Bilder getauscht werden)
verschwinden die Bitmap's und lassen sich dann nichtmehr anzeigen !?
Lösche ich da evtl. irgendwas nicht oder mache ich da was nicht richtig

Gruß
 
Bei den Bitmaps sieht mir das nach einen GDI-Ressourcenproblem aus. Fall du dir einen Device Context holst (etwa via GetDC) oder mit mit SelectObject irgendwelche GDI-Objekte verwendest, musst du an der Stelle danach auch aufräumen.

Gruß
MCoder
 
Das mit den Bitmap's mache ich folgendermaßen:


for( index = 0 ; index < 24 ; index ++ )
{
if( aicConfig [index] & (1 << ioOn) )
{
CStatic *OnOff = new CStatic ;
OnOff -> Create ("Test", WS_TABSTOP | WS_CHILD | SS_BITMAP | SS_NOTIFY | WS_VISIBLE, CRect (32, 30 + (25 * index), 50, 48 + (25 * index)), this, ainOnOff + index) ;
HBITMAP hbmp =:: LoadBitmap(AfxGetInstanceHandle (), "IDB_LED_GN_ON_DOWN") ;
OnOff -> SetBitmap (hbmp) ;
}
else
{
CStatic *OnOff = new CStatic ;
OnOff -> Create ("Test", WS_CHILD | SS_BITMAP | WS_VISIBLE, CRect (32, 30 + (25 * index), 50, 48 + (25 * index)), this, ainOnOff + index) ;
HBITMAP hbmp =:: LoadBitmap(AfxGetInstanceHandle (), "IDB_LED_GR_ON_UP") ;
OnOff -> SetBitmap (hbmp) ;
}
}


Müsste doch eigentlich so ... ?

Gruß und Schönes Wochenende
 
Hallo Dirk,

das HBITMAP hbmp ist's. Das müsstest du nach getaner Arbeit (also wenn das CStatic gelöscht wird) ebenfalls entsorgen und zwar mit dem Befehl:
C++:
::DeleteObject(hbmp);

Gruß
MCoder
 

Neue Beiträge

Zurück