VB :: Code & APIs

[VB.NET] WebBrowser 컨트롤에서 확대 / 축소 기능 구현하기

Microsoft Edge 혹은 Internet Explorer 7.0 이상의 버전에는 Zoom 기능이 존재합니다. 웹 페이지를 최대 1000% 까지 확대가 가능하며, 10% 까지 줄일 수 있는데요, 해당 기능을 구현할 수 있는 방법입니다.

 

EdgeZoom

 

우선 VB 2015 에서 새로운 Windows Form 프로젝트를 Visual Basic 으로 하나 생성해주시구요,

디자인 창에서 WebBrowser 컨트롤 하나와 Button 하나를 올려 놓으신 후 WebBrowser 의 객체 내 “URL” 속성을 https://happybono.wordpress.com/ 으로 변경합니다.

이후, 코딩 창에 다음을 입력합니다.

 

Public Class Form1

	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

	Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
		Try
			Dim Res As Object = Nothing
			Dim MyWeb As Object
			MyWeb = Me.WebBrowser1.ActiveXInstance
			MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, ExecOpt.OLECMDEXECOPT_DONTPROMPTUSER, 50, IntPtr.Zero)
		Catch ex As Exception
			MsgBox("Error:" & ex.Message)
		End Try
	End Sub
End Class

 

이렇게 소스를 작성하신 후 실행해보세요.
디버깅 후 버튼을 누르시면 200% 늘어난 웹 페이지를 확인하실 수 있습니다.

 

MyWeb.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, ExecOpt.OLECMDEXECOPT_DONTPROMPTUSER, 20, IntPtr.Zero)

 

이 부분에서 뒤쪽의 “20” 을 변수로 이용하거나 콤보 박스를 이용하면 Edge 혹은 Internet
Explorer 와 같이 WebBrowser 컨트롤에 표시되는 웹 페이지의 비율을 마음대로 조절하실 수
있으며, 단위는 퍼센트 (%) 단위이니 함께 참고해주시기 바랍니다.

고맙습니다.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s