Bei meinem System W2K und IE 6.0 erscheint bei Aufruf der Funktion window.print() automatisch das UI zur Abfrage wieviele Seiten, Druckparameter, etc...
Um das UI zu umgehen habe ich mir aus dem Forumsarchiv untenstehendes Tool in die Seite eingebaut. Funktioniert prima, ausser ... Auf einem anderen Rechner kann man ebenfalls drucken, jedoch sobald das Druckericon unten in der Nachrichtenzeile verschwindet wird das auf der Seite eingebundene JAVA.class nicht mehr ausgedruckt. Wenn man den Druck sofort wiederholt stimmt der Ausdruck wieder. Es sieht so aus als ob ein Timeout vorliegt und de Druck des .class verhindert. Weiß da vielleicht wer einen Rat?
Und wieso wird mit window.print() überhaupt ein UI ausgeführt?============================================================
<script language="JavaScript">
function Drucken()
{
window.setTimeout("",120);
if(document.layers) /* Abfrage auf Netscape 4 */
self.print();
if(document.all) /* Abfrage auf MSIE 4 */
{
self.focus();
var OLECMDID_PRINT = 6;
var OLECMDF_ENABLED = 1;
var OLECMDEXECOPT_DONTPROMPTUSER = 2;
var OLECMDEXECOPT_PROMPTUSER = 1;
var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
document.body.insertAdjacentHTML('afterEnd',WebBrowser);
WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DONTPROMPTUSER);
WebBrowser1.outerHTML = ''
}
}
</script>
Das das zum Glück nur bei Browsern funktioniert, denen die Wünsche Benutzer der Software reichlich egal ist, weisst du ja. Darüber hinaus testest du ausschließlich auf 4'er Browser, das die Marktführer mittlerweile teilweise bei 7 angekommen sind, weisst du auch?
Aber für dein Problem ist das sowieso nicht von Belang, sowas sollte in einer Umgebung wie einem Internet Browser nicht funktionieren, eigentlich noch nicht mal in einer Anwendung (s. Svens Posting).
Struppi.