003
13.09.2003, 19:07 Uhr
niels_ole_salscheider
|
Nein, ich wollte das Fenster als Reaktion auf den Minimieren-Button verschwinden lassen und ein Symbol im Info-Bereich erscheinen lassen und hab dazu folgendes verwendet:
C++: |
case WM_SYSCOMMAND: //Symbol im Systray und Fenster verbergen: if (wParam == SC_MINIMIZE) { NOTIFYICONDATA icndata; icndata.cbSize = sizeof(NOTIFYICONDATA); icndata.hWnd = hwnd; icndata.uID = 1; icndata.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP; icndata.uCallbackMessage = WM_ICONCLICK; icndata.hIcon = LoadIcon ((HINSTANCE) GetWindowLong(hwnd, GWL_HINSTANCE), MAKEINTRESOURCE(IDI_ICON1)) ; lstrcpy(icndata.szTip, szAppName);
Shell_NotifyIcon(NIM_ADD, &icndata); ShowWindow (hwnd, SW_HIDE); }
break;
|
Aber es muss noch verhindert werden, dass das an DefWindowProc übergeben wird und von daher hab ich jetzt eine Bedingung gemacht:
C++: |
if (!noreturn) return DefWindowProc (hwnd, message, wParam, lParam) ;
|
und in die Bedingung if (wParam == SC_MINIMIZE) noch den Befehl noreturn = true; eingefügt... |