Progressbar zu früh gefüllt
-
moin meisters ...
#define lMax 10000000 SendMessage(hProgress, PBM_SETRANGE, 0, MAKELONG(0, lMax)); ... if( LOWORD(wParam) == IDC_BTN_START ) { for(long l=0; l<lMax && !IsCanceled(IDC_BTN_STOP, hDlg); l++) { SendMessage(hProgress, PBM_SETPOS, l, 0); } EndDialog(hDlg, LOWORD(IDOK)); return TRUE; }Problem: Die Progressbar ist bis zum Ende gefüllt, jedoch ist die Schleife
noch nicht beendet.Was nun ?
Besten Dank im Voraus
mfg
RBedit: Bitte aussagekräftige Titel verwenden: Wie man Fragen richtig stellt
-
lMax passt nicht in ein Word. Deswegen wird auf 16 Bit verkürzt und das Maximum auf 38528 festgelegt. Damit das funktioniert, mußt Du PBM_SETRANGE32 verwenden:
SendMessage(hProgress, PBM_SETRANGE32, 0, (LPARAM)lMax);
-
moin meister,
ah, Danke!
