Hallo
Mir ist kein Parameter bekannt, welcher das Fenster maximiert erscheinen laesst.
Muesstest das Fenster von Hand maximieren.
D.h nach dem Fensterhandle des Druckvorschau Fensters suchen und dieses maximieren.
Habe mal einen kleinen Code dafuer geschrieben:
Delphi-Quellcode:
procedure WB_PrintPreview(Webbrowser: TWebbrowser; nCmdShow: Integer);
const
IE_PPREVIEWCLASS = 'Internet Explorer_TridentDlgFrame'; // Druckvorschau Fenster Klassenname
var
HWND_PP, HWND_FG: HWND;
ClassName: array[0..255] of Char;
t1, t2: DWORD;
begin
Webbrowser.ExecWB(OLECMDID_PRINTPREVIEW, OLECMDEXECOPT_PROMPTUSER); // Druckvorschau aufrufen
HWND_PP := 0;
t1 := GetTickCount;
repeat
HWND_FG := GetForegroundWindow(); // Vordergrundfenster ermitteln
GetClassName(HWND_FG, ClassName, SizeOf(ClassName));
if lstrcmp(@ClassName[0], @IE_PPREVIEWCLASS[1]) = 0 then // überprüfen, ob Druckvorschau Fenster
HWND_PP := HWND_FG;
Application.ProcessMessages;
t2 := GetTickCount;
until (HWND_PP <> 0) or (t2 - t1 > 6000); // Falls gefunden oder Timeout erreicht
if HWND_PP <> 0 then
ShowWindow(HWND_PP, nCmdShow); // Druckvorschau Fenster maximieren
end;
Aufzurufen so:
WB_PrintPreview(Webbrowser1, SW_MAXIMIZE);