Office中国论坛/Access中国论坛

标题: 浏览器控件问题? [打印本页]

作者: xingzhihao    时间: 2006-6-8 06:00
标题: 浏览器控件问题?



例如:

当用户的计算机不能上网时,窗体的浏览器控件将显示“该页无法显示”,这个影响美观。

我希望这时它的可见性为不显示,关键是——

如何判断浏览器控件的联网状态??

高手,请指教12。谢谢!



[attach]18381[/attach]


[此贴子已经被作者于2006-6-7 22:02:51编辑过]


作者: WDLRCZT    时间: 2006-6-8 16:48
看看如下代码:

检测是否以联网及联网方式
module:
Public Declare function InternetGetConnectedStateEx Lib "wininet.dll" _
    Alias "InternetGetConnectedStateExA" _
    (ByRef lpdwFlags As Long, _
    ByVal lpszConnectionName As String, _
    ByVal dwNameLen As Long, _
    ByVal dwReserved As Long _
    ) As Long

Public Enum EIGCInternetConnectionState
    INTERNET_CONNECTION_MODEM = &H1&
    INTERNET_CONNECTION_LAN = &H2&
    INTERNET_CONNECTION_PROXY = &H4&
    INTERNET_RAS_INSTALLED = &H10&
    INTERNET_CONNECTION_OFFLINE = &H20&
    INTERNET_CONNECTION_CONFIGURED = &H40&
End Enum

Public Property Get InternetConnected( _
    Optional ByRef eConnectionInfo As EIGCInternetConnectionState, _
    Optional ByRef sConnectionName As String _
    ) As Boolean
    Dim dwFlags As Long
    Dim sNameBuf As String
    Dim Lr As Long
    Dim iPos As Long
   
    sNameBuf = String$(513, 0)
    Lr = InternetGetConnectedStateEx(dwFlags, sNameBuf, 512, 0&)
    eConnectionInfo = dwFlags
    iPos = InStr(sNameBuf, vbNullChar)
    If iPos > 0 Then
        sConnectionName = Left$(sNameBuf, iPos - 1)
    ElseIf Not sNameBuf = String$(513, 0) Then
        sConnectionName = sNameBuf
    End If
    InternetConnected = (Lr = 1)
End Property
窗体中
Private Sub Form_Load()
    ' Determine whether we have a connection:
    bConnected = InternetConnected(Er, sName)

    ' The connection state info parameter provides details
    ' about how we connect:
    If (Er And INTERNET_CONNECTION_MODEM) = INTERNET_CONNECTION_MODEM Then
        sMsg = sMsg & "Connection uses a modem." & vbCrLf
    End If
    If (Er And INTERNET_CONNECTION_LAN) = INTERNET_CONNECTION_LAN Then
        sMsg = sMsg & "Connection uses LAN." & vbCrLf
    End If
    If (Er And INTERNET_CONNECTION_PROXY) = INTERNET_CONNECTION_PROXY Then
        sMsg = sMsg & "Connection is via Proxy." & vbCrLf
    End If
    If (Er And INTERNET_CONNECTION_OFFLINE) = INTERNET_CONNECTION_OFFLINE Then
        sMsg = sMsg & "Connection is Off-line." & vbCrLf
    End If
    If (Er And INTERNET_CONNECTION_CONFIGURED) = INTERNET_CONNECTION_CONFIGURED Then
        sMsg = sMsg & "Connection is Configured." & vbCrLf
    Else
        sMsg = sMsg & "Connection is Not Configured." & vbCrLf
    End If
    If (Er And INTERNET_RAS_INSTALLED) = INTERNET_RAS_INSTALLED Then
        sMsg = sMsg & "System has RAS installed." & vbCrLf
    End If
   
   ' Display the connection name and info:
    If bConnected Then
        Text1.Text = "Connected: " & sName & vbCrLf & vbCrLf & sMsg
    Else
        Text1.Text = "Not Connected: " & sName & vbCrLf & vbCrLf & sMsg
    End If
End Sub



(本贴加为精华,以示鼓励——LucasLynn)

[此贴子已经被LucasLynn于2006-6-9 11:05:05编辑过]


作者: xingzhihao    时间: 2006-6-8 21:45
谢谢您的帮助!

但是上述代码有错误——

bConnected = InternetConnected(Er, sName)

[attach]18395[/attach]


是否有什么引用???

[此贴子已经被作者于2006-6-8 13:47:52编辑过]


作者: WDLRCZT    时间: 2006-6-8 23:23
看看这个示例

[attach]18398[/attach]

作者: xingzhihao    时间: 2006-6-9 04:05
原来是几个变量没有声明——

再次感谢!WDLRCZT,[em07]
作者: WDLRCZT    时间: 2006-6-9 16:27
你太客气了,大家互相帮助嘛
作者: xingzhihao    时间: 2006-6-11 23:46
浏览器控件的背景如何设置透明?
作者: WDLRCZT    时间: 2006-6-12 16:26
你把浏览器控件可见性设为否试试
作者: wmy2008    时间: 2006-6-21 20:27
好东西
作者: brucexiao    时间: 2008-1-22 14:25
多谢指导!!!!!!!!!!!!!!!!
作者: goto2008    时间: 2008-1-24 11:59
顶一下
作者: v_tang    时间: 2008-3-25 11:24
学习一下                
作者: goto2008    时间: 2008-3-27 14:49
.....




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3