• Regolamento Macrocategoria DEV
    Prima di aprire un topic nella Macrocategoria DEV, è bene leggerne il suo regolamento. Sei un'azienda o un hosting/provider? Qui sono anche contenute informazioni per collaborare con Sciax2 ed ottenere l'accredito nella nostra community!

Guida Aggiungere lo zoom in WebBrowser

Partyosha

Utente Medio
Autore del topic
18 Giugno 2012
165
0
Miglior risposta
0
Salve a tutti sciaxini!
Molti chiedevano come fare lo zoom nei browser e allora scrivo questa guida... però e solo per WebBrowser (Gecko e WebKit non lo so)

INIZIAMO!!

1.Aggiungere 1 Trackbar e 11 Label

2. Sotto Public Class Form1 inserite:

Private Enum Exec
OLECMDID_OPTICAL_ZOOM = 63
End Enum

Private Enum ExecOpt
OLECMDEXECOPT_DODEFAULT = 0
OLECMDEXECOPT_PROMPTUSER = 1
OLECMDEXECOPT_DONTPROMPTUSER = 2
OLECMDEXECOPT_SHOWHELP = 3
End Enum

3. Inserite questo codice nella Trackbar:
If TrackBar1.Value = 0 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 12, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 1 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 25, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 2 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 50, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 3 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 75, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 4 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 100, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 5 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 125, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 6 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 150, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 7 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 175, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 8 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 200, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 9 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 225, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 10 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 250, IntPtr.Zero)
Catch ex As Exception
End Try
End If

4.Rinominate i link label così:
12% 25% 50% 75% 100% 125% 150% 175% 200% 225% e 250%


Link label 12% codice:
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 12, IntPtr.Zero)
Catch ex As Exception
End Try

Link label 25% codice:
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 25, IntPtr.Zero)
Catch ex As Exception
End Try

Per le altre link label cambiate il codice:
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 25, IntPtr.Zero)
con la percentuale del label...

Esempio:

ExecOpt.OLECMDEXECOPT_PROMPTUSER, 50, IntPtr.Zero)
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 75, IntPtr.Zero)
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 100, IntPtr.Zero)
E così via ;) Grazie!

Fonte: Altro Forum
 
Ultima modifica:
Riferimento: Aggiungere lo zoom in WebBrowser

Cos'è MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 250, IntPtr.Zero)
?
 
Riferimento: Aggiungere lo zoom in WebBrowser

Salve a tutti sciaxini!
Molti chiedevano come fare lo zoom nei browser e allora scrivo questa guida... però e solo per WebBrowser (Gecko e WebKit non lo so)

INIZIAMO!!

1.Aggiungere 1 Trackbar e 11 Label

2. Sotto Public Class Form1 inserite:

Private Enum Exec
OLECMDID_OPTICAL_ZOOM = 63
End Enum

Private Enum ExecOpt
OLECMDEXECOPT_DODEFAULT = 0
OLECMDEXECOPT_PROMPTUSER = 1
OLECMDEXECOPT_DONTPROMPTUSER = 2
OLECMDEXECOPT_SHOWHELP = 3
End Enum

3. Inserite questo codice nella Trackbar:
If TrackBar1.Value = 0 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 12, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 1 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 25, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 2 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 50, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 3 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 75, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 4 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 100, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 5 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 125, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 6 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 150, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 7 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 175, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 8 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 200, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 9 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 225, IntPtr.Zero)
Catch ex As Exception
End Try

ElseIf TrackBar1.Value = 10 Then
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 250, IntPtr.Zero)
Catch ex As Exception
End Try
End If

4.Rinominate i link label così:
12% 25% 50% 75% 100% 125% 150% 175% 200% 225% e 250%


Link label 12% codice:
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 12, IntPtr.Zero)
Catch ex As Exception
End Try

Link label 25% codice:
Try
Dim Res As Object = Nothing
Dim MyWeb As Object
MyWeb = Me.WebBrowser1.ActiveXInstance
MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, _
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 25, IntPtr.Zero)
Catch ex As Exception
End Try

Per le altre link label cambiate il codice:
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 25, IntPtr.Zero)
con la percentuale del label...

Esempio:

ExecOpt.OLECMDEXECOPT_PROMPTUSER, 50, IntPtr.Zero)
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 75, IntPtr.Zero)
ExecOpt.OLECMDEXECOPT_PROMPTUSER, 100, IntPtr.Zero)
E così via ;) Grazie!

Fonte: Mia

Funziona solo con le pagine web, se per esempio mostro un file .swf da locale, non funziona.
 
Riferimento: Aggiungere lo zoom in WebBrowser

...l'ho capito...ma i parametri cosa rappresentano ?

Sono costanti che fanno parte di alcune enumerazioni, come

enum OLECMDID

enum OLECMDEXECOPT

dichiarate nell'header DocObj.h relativo al Document Object Model e che sono utilizzate dal metodo

Exec dell'interfaccia IOleCommandTarget (COM)

Trovi i dettagli in

Perfavore, Entra oppure Registrati per vedere i Link!

Perfavore, Entra oppure Registrati per vedere i Link!

Perfavore, Entra oppure Registrati per vedere i Link!
 
Riferimento: Aggiungere lo zoom in WebBrowser

Sono costanti che fanno parte di alcune enumerazioni, come

enum OLECMDID

enum OLECMDEXECOPT

dichiarate nell'header DocObj.h relativo al Document Object Model e che sono utilizzate dal metodo

Exec dell'interfaccia IOleCommandTarget (COM)

Trovi i dettagli in

Perfavore, Entra oppure Registrati per vedere i Link!

Perfavore, Entra oppure Registrati per vedere i Link!

Perfavore, Entra oppure Registrati per vedere i Link!

Esattamente.. @System32 come dice nothing sono costanti ;)
 
Riferimento: Aggiungere lo zoom in WebBrowser

Esattamente.. @System32 come dice nothing sono costanti ;)

Meno male che tu confermi ... credevo di avere sbagliato ... :emoji_confused:

Comunque, @System32, ad ogni costante tra quelle individuate come "comandi", corrisponde un significato diverso dei parametri passati in input.
Ad esempio, per

OLECMDID_OPTICAL_ZOOM

la documentazione parla di:

1) compatibilità a partire da IE7
2) il fattore di zoom è espresso da un parametro VT_I4 nel range 0 to 1000 (%)
 
Riferimento: Aggiungere lo zoom in WebBrowser

La fonte è tua giusto ? Spiegami questo allora ->
Perfavore, Entra oppure Registrati per vedere i Link!


Sono costanti che fanno parte di alcune enumerazioni, come

enum OLECMDID

enum OLECMDEXECOPT

dichiarate nell'header DocObj.h relativo al Document Object Model e che sono utilizzate dal metodo

Exec dell'interfaccia IOleCommandTarget (COM)

Trovi i dettagli in

Perfavore, Entra oppure Registrati per vedere i Link!

Perfavore, Entra oppure Registrati per vedere i Link!

Perfavore, Entra oppure Registrati per vedere i Link!

Comunque, @System32, ad ogni costante tra quelle individuate come "comandi", corrisponde un significato diverso dei parametri passati in input.
Ad esempio, per

OLECMDID_OPTICAL_ZOOM

la documentazione parla di:

1) compatibilità a partire da IE7
2) il fattore di zoom è espresso da un parametro VT_I4 nel range 0 to 1000 (%)

Ottimo, ti ringrazio :emoji_slight_smile:
 
Riferimento: Aggiungere lo zoom in WebBrowser

Esattamente.. @System32 come dice nothing sono costanti ;)

Ti ha salvato nothing. :|
Comunque, con i file in locale non sai come zoomare?

--------------- AGGIUNTA AL POST ---------------

La fonte è tua giusto ? Spiegami questo allora ->
Perfavore, Entra oppure Registrati per vedere i Link!
@Partyosha, non sei degno neanche di mettere la fonte, vuoi solo Grazie e Reputazione, vergognati.
@System32 , partyosha è un PieroTofy's Fan, che vuoi farci. :soso:
 
Ultima modifica:
Riferimento: Aggiungere lo zoom in WebBrowser

Sbaglio o sei stato te a chiedere in assistenza tecnica (IERI) come si fa lo zoom??

WOW! Vedo che ti si è accesa la lampadina e sei pure stato in grado di scrivere una guida...

Ma fammi il piacere.... semplicemente non trovando risposta su Sciax2, sei corso su google hai cercato in giro e hai copiato la guida.

Solo perchè il testo l'hai scritto tu, non vuol dire che la fonte è TUA, perchè il codice non è TUO.

E se nothing non lo spiegava, non ti saresti ripresentato in questo topic per non fare una figura di merda, che hai fatto comunque.