How To Change the Font Size in a WebBrowser Control That Is Hosted Inside a Visual Basic Application

Isenção de Responsabilidade para Conteúdo da KB Desativado

Este artigo foi escrito sobre produtos para os quais a Microsoft já não fornece suporte. Por conseguinte, este artigo é oferecido "tal como está" e não será mais atualizado.

Summary

You can use the ExecWB method to print the content inside a WebBrowser control. In addition, you can use ExecWB to change the font size of the text that is displayed in a WebBrowser control that is embedded in Microsoft Visual Basic application. This article demonstrates how to use ExecWB in this way.

More Information

You can use ExecWB and pass the OLECMDID_ZOOM command as the cmdID parameter to retrieve the current value of the zoom level. Zoom level refers to the current font size of the text that Internet Explorer shows; it is equivalent to the value that is specified as Text Size on the View menu of Internet Explorer.

After you retrieve the current value of the font size, you can set it to a different value. The default value should be 2, which corresponds with Medium in the graphical user interface menu. Because the option allows both 2 levels greater and 2 levels smaller, the valid range for the zoom level is 0 through 4, in which 0 is smallest and 4 is largest. The OLECMDID_GETZOOMRANGE command returns the valid range for the font size, which should be from 0 to 4.

The following steps demonstrate how to add this functionality into your custom browser:

  1. Open a new standard EXE project in Visual Basic 6.0. Form1 is created by default.
  2. Add Microsoft Internet Controls into your component lists.
  3. Add a WebBrowser control and three command buttons to Form1, and use the default names.
  4. Copy and paste the following code in Form1:
    Private Sub Form_Load()
    WebBrowser1.Navigate "http://www.microsoft.com"
    Command1.Caption = "Get current font size"
    Command2.Caption = "Decrease font size"
    Command3.Caption = "Increase font size"
    End Sub


    Private Sub Command1_Click()

    Dim Z As Variant 'Z is the value to hold the zoom level.
    WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Null, Z

    MsgBox "The current font size is " & Z

    End Sub

    Private Sub Command2_Click()

    Dim Z As Variant 'Z is the value to hold the zoom level.
    WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Null, Z

    If Z > 0 Then
    Z = Z - 1
    Else
    Z = 0
    End If

    WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Z, Null
    End Sub

    Private Sub Command3_Click()

    Dim Z As Variant 'Z is the value to hold the zoom level.
    WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Null, Z

    If Z < 4 Then
    Z = Z + 1
    Else
    Z = 4
    End If

    WebBrowser1.ExecWB OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, Z, Null
    End Sub
  5. Run the project. After the page is loaded, you can click the command buttons to see the font size change that appears in the WebBrowser control.

References

For more information, see the following Microsoft Web sites:

For additional information about changing the font size of a WebBrowser control that is hosted inside a Microsoft Visual C++ application, click the article number below to view the article in the Microsoft Knowledge Base:

156693 SAMPLE: IEZoom.exe Changes the Font Size of the WebBrowser Control
For more information about developing Web-based solutions for Microsoft Internet Explorer, visit the following Microsoft Web sites:
Propriedades

ID do Artigo: 304103 - Última Revisão: 11 de mai de 2006 - Revisão: 1

Comentários