Einzelnen Beitrag anzeigen

romber

Registriert seit: 15. Apr 2004
Ort: Köln
1.166 Beiträge
 
Delphi 10 Seattle Professional
 
#1

MessageBox über alle anderen Programme zeigen???

  Alt 8. Jul 2008, 11:19
Ich benutze folgende Funktion, um ein MessageBox mit eigenem Icon zu erstellen.

Delphi-Quellcode:
function MyMessageBox(hWnd: HWND; caption, Text: string; IDIcon: DWORD; Style: Cardinal): Boolean;
var
  MsgInfo: TMsgBoxParams;
begin
  MsgInfo.cbSize := SizeOf(TMsgBoxParams);
  MsgInfo.hwndOwner := hWnd;
  MsgInfo.hInstance := GetWindowLong(hWnd, GWL_HINSTANCE);
  MsgInfo.lpszText := @Text[1];
  MsgInfo.lpszCaption := @Caption[1];
  MsgInfo.dwStyle := Style;
  MsgInfo.lpszIcon := MAKEINTRESOURCE(IDICON);
  case Cardinal(MessageBoxIndirect(MsgInfo)) of
     IDYES: result := true;
     IDNO: result := false;
  end;
end;
Wenn alle anderen Fenster unten in der TaskBar minimiert sind, erscheint die MessageBox selbstverständlich ganz normal. Wenn aber ein anderes Fenster z.B. Windows-Explorer aktiv ist, erscheint die MessageBox hinter dem aktiven Fenster, so dass man gar nicht merkt, dass eine MessageBox angezeigt wird. Wie kann ich diese MessageBox über allen Fenster anzeigen lassen?
  Mit Zitat antworten Zitat