TWebBrowser ausdrucken |
|
| System | Win9x, WinNT, Win2000, WinXP, Vista, Win7 |
|---|---|
| Ab Delphi-Version | Delphi 1 |
| Letzte Änderung | 28.09.2010 |
Folgende Procedure druckt den Inhalt eines TWebbrowsers aus. Als Parameter muss die TWebbrowser-Instanz übergeben werden.
var
OleCommandTarget: IOleCommandTarget;
Command: TOleCmd;
Success: HResult;
begin
if not Assigned(WB) then
Exit;
if not Assigned(WB.Document) then
Exit;
// Referenz auf IOleCommandTarget besorgen
WB.Document.QueryInterface(IOleCommandTarget, OleCommandTarget);
// Prüfen, ob Drucken momentan erlaubt
Command.cmdID:= OLECMDID_PRINT;
if OleCommandTarget.QueryStatus(nil, 1, @Command, nil) <> S_OK then
begin
ShowMessage('Drucken nicht möglich');
Exit;
end;
if (Command.cmdf and OLECMDF_ENABLED) <> 0 then
begin
// Drucken ausführen
Success:= OleCommandTarget.Exec(nil, OLECMDID_PRINT,
OLECMDEXECOPT_PROMPTUSER, EmptyParam, EmptyParam);
case Success of
S_OK: ; // Alles OK
OLECMDERR_E_CANCELED: ShowMessage('Abbruch durch User');
else ShowMessage('Fehler!!!');
end;
end
else
begin
// Drucken momentan nicht erlaubt
ShowMessage('Drucken nicht möglich');
Exit;
end;
end;
In diesem Fall wird der Druck-Konfigurationsdialog angezeigt. Dies wird über den Parameter OLECMDEXECOPT_PROMPTUSER gesteuert. Soll kein Dialog angezeigt werden, muss der Parameter den Wert OLECMDEXECOPT_DONTPROMPTUSER annehmen.Es müssen außerdem die Units "ActiveX" und "SHDocVw_TLB" eingebunden werden.
- Word-Dokumente im Hintergrund drucken
- Drucken mit Dialogen
- Ein Bild drucken
- Inhalt eines Memos drucken
- RichEdit mit Seitenrändern drucken
- StringGrid drucken
- Bei TWebbrowser die Zwischenablage aktivieren
- Internet Explorer ActiveX-Komponente nutzen
- Formulare im Browser ausfüllen/auslesen
- HTML-Code der in TWebBrowser angezeigten Seite zugreifen