bool inUSB = false;
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){
int wmId, wmEvent;
PAINTSTRUCT ps;
HDC hdc;
switch (message){
case WM_DEVICECHANGE:
switch (wParam){
case DBT_DEVICEARRIVAL:
inUSB = true;
UpdateWindow(hWnd);
break;
case DBT_DEVICEREMOVECOMPLETE:
inUSB = false;
break;
}
break;
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
if (inUSB){
Ellipse(hdc, 10, 10, 100, 100);
}else {
Ellipse(hdc, 10, 10, 100, 200);
}
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
как заставить обновлять окно дл яновой прорисовки
событие подключения нового устройства я фиксирую но вот перерисовать окно неполучается
Код:
InvalidateRect(hWnd,NULL,TRUE);
UpdateWindow(hWnd);
Иначе перерисовывать как бы нечего, а так задается область, в случае NULL вся область окна...