vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
microsoft internet controls - Ändern des Zooms 
Autor: V A T
Datum: 27.01.15 02:23

Hallo,

ich habe mal wieder eine Frage und hoffe auf Eure bewährte Hilfe!

Ich habe die o.g. Komponente "microsoft internet controls" in mein Projekt eingebunden und rufe mittels des steuerelements webbrowser nun eine Website auf. Soweit alles prima!

Nun ist die Seite aber "zu groß" für mein bewusst begrenztes Fenster. Im normalen IExplorer würde ich jetzt über "Ansicht" - "Zoom" - "75%" die Größe der Darstellung heruntersetzen.

Nun meine Frage: Kann ich das irgendwie auch mit meinem Webbrowser-Steuerelement per Code tun?

Viele Grüße und besten Dank an alle, die mich unterstützen!

Gruß

V A T

Vielen Dank an alle in diesem Forum, welche mir Ihre Zeit schenken und sich mit meinen Problemen befassen! Ich weiß das ernsthaft zu schätzen und danke allen, die sich mit dieser Frage befassen herzlich!!!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: microsoft internet controls - Ändern des Zooms 
Autor: Blackbox
Datum: 27.01.15 09:03

'zoom:=0.25; //25%
'zoom:=0.5; //50%
'zoom:=1.5; //100%
'zoom:=2.0; //200%
'zoom:=5.0; //500%
'zoom:=10.0; //1000%/.zoom:=0.25; //25%

WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_PROMPTUSER, 1.0 '0.75%
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: microsoft internet controls - Ändern des Zooms 
Autor: V A T
Datum: 28.01.15 01:44

Hallo Blackbox,

vielen Dank für Deine Antwort! Leider bekomm ich es noch nicht zum Laufen.

Ich habe die unterste Zeile Deines Codes hinter den aufruf der Website gesetzt. Dabei habe ich "Webbrowser1" durch den Namen meines Steuerelements "web_dictionary" ersetzt. Alles andere hab ich gelassen, da 75% genau richtig wären. D.h. mein Code sieht jetzt so aus:

Option Explicit
 
Private Sub web_dictionary_BeforeNavigate2(ByVal pDisp As Object, URL As _
  Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, _
  Headers As Variant, Cancel As Boolean)
  web_dictionary.Silent = True
End Sub
 
Private Sub Form_Activate()
    web_dictionary.Navigate "http://de.pons.com"
    web_dictionary.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_PROMPTUSER, 1#  '0.75%
End Sub
Leider bekomme ich als Ergebnis immer nur einen Laufzeitfehler: "Die Methode 'ExecWB' für das Objekt 'IWebbrowser2' ist fehlgeschlagen."

Hast du eine Idee, wo mein Fehler liegt?

Gruß und nochmals Dank für Deine Hilfe!

V A T

Vielen Dank an alle in diesem Forum, welche mir Ihre Zeit schenken und sich mit meinen Problemen befassen! Ich weiß das ernsthaft zu schätzen und danke allen, die sich mit dieser Frage befassen herzlich!!!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: microsoft internet controls - Ändern des Zooms 
Autor: OGGI
Datum: 28.01.15 11:20

ähm, wird zu dem Zeitpunkt wo du die Website auf 75% verkleinerst, die Website auch schon ganz angezeigt? Ich würde nach dem Aufruf web_dictionary.Navigate "http://de.pons.com" ein DoEvents setzen.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: microsoft internet controls - Ändern des Zooms 
Autor: OGGI
Datum: 28.01.15 16:40

WebBrowser1.busy meldet wenn eine Website ganz geladen ist
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: microsoft internet controls - Ändern des Zooms 
Autor: Blackbox
Datum: 28.01.15 18:13

Hi,

nach Test bestätigt: ExecWB reagiert ein bißchen seltsam.

aber das hier ;) hilft:

Private Sub Command1_Click()
    Dim n As Variant
    Dim m As Long
 
    m = 75
 
    WebBrowser1.ExecWB 63, OLECMDEXECOPT_PROMPTUSER, CVar(m), n
 
    MsgBox n
End Sub
Die Funktion will eine ECHTE Variantstruktur, das wars. CVar liefert diese in VB-Classic.
m bekommt nun den Zoom direkt in Prozent. 75 wäre also die 75%, 100 wäre 100% etc.
Der Mitposter liegt auch richtig: Das Dokument muss vollständig geladen sein.

Beitrag wurde zuletzt am 28.01.15 um 18:27:57 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: microsoft internet controls - Ändern des Zooms 
Autor: V A T
Datum: 28.01.15 23:24

Hallo OGGI,
hallo Blackbox,

vielen Dank für eure gemeinsam entwickelte Lösung!

Beide Ansätze in Kombination scheinen - wie ihr schon richtig vermutet habt - erfolgreich:

Private Sub Form_Activate()
    Dim n As Variant
    Dim m As Long
 
    m = 75
 
    web_dictionary.Navigate "http://de.pons.com/%C3%BCbersetzung?q=" & vokabel _
      & "&l=deen&in=&lf=en"
 
    Do
        DoEvents
    Loop Until web_dictionary.Busy = False
 
    web_dictionary.ExecWB 63, OLECMDEXECOPT_PROMPTUSER, CVar(m), n  
End Sub
Sieht bisher prima aus! Ich teste jetzt noch ein wenig, bin aber guten Mutes!

Grüße an Euch und nochmals Danke! Ohne Euch wäre ich aufgeschmissen...

Gruß

V A T

Vielen Dank an alle in diesem Forum, welche mir Ihre Zeit schenken und sich mit meinen Problemen befassen! Ich weiß das ernsthaft zu schätzen und danke allen, die sich mit dieser Frage befassen herzlich!!!

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel