我正在使用VBScripta创建一个新的Internet Explorer窗口并显示一个表单。 我想将图像添加到IE窗口,但我无法添加任何图像。会出现一个带有小十字的盒子。 我在“Displaying an image in a VBScript MsgBox”处找到了类似的查询,但提供的解决方案是从网络(工作)加载图像,但我希望它来自本地文件夹(不工作)。 有人可以帮我解决这个问题吗?非常感谢:)
Set objIE = CreateObject("InternetExplorer.Application")
With objIE
.Navigate "C:\Users\NA34242\Documents\SAP\Pages\GetTRs.html"
.ToolBar = False
.StatusBar = False
.Left = 100
.Top = 100
.Width = 200
.Height = 200
.Visible = True
.Document.Title = "Form"
.Document.Body.InnerHTML = "<img src=""C:\images.png"" height=100 width=100>"
End With
答案 0 :(得分:0)
我很抱歉,但这种方法不适用于大多数浏览器,这是一个安全问题,你只能使用uri的IMG.src 你可以做的是导航到文件本身,所以让它可见,如果你需要页面上的其他东西,你将不得不在另一个框架中。
这是我用来显示我的locat c:drive图像的脚本。使用show sub,您可以显示文本,但不能显示IMG
dim oIe
InitIE 500, 500
oIe.navigate "file:///C|/Users/peter/butterfly.png"
'--- ---'
Sub InitIE(iWidth,iHeight)
Dim iLeft, iTop
On error resume next
Set oIe = WScript.CreateObject("InternetExplorer.Application", "IE_")
If Err.Number <> 0 Then
WScript.CreateObject("WScript.Shell").Popup("Error:" & Err.description)
Wscript.Quit
Else
With oIe
.Visible = False
.TheaterMode = True
.FullScreen = True
iLeft = (.width - iWidth) / 2
iTop = (.Height - iHeight) / 2
.FullScreen = False
.TheaterMode = False
.MenuBar = True
.ToolBar = False
.StatusBar = True
.AddressBar = False
.navigate "about:blank"
.Width = iWidth
.Height = iHeight
.Left = iLeft
.Top = iTop
.Resizable = True
.Visible = True
.document.focus()
End With
End If
End Sub
'--- ---'
Sub Show(ByVal sText)
If IEReady() Then
oIe.Document.body.innerHTML = oIe.Document.body.innerHTML & sText & "<br>"
iLengte = iLengte + 300
oIe.Document.parentWindow.scroll 0, iLengte
End If
End Sub
'--- ---'
Function IEReady()
IEReady = False
If TypeName(oIe) <> "Object" Then
If oIe.ReadyState = 4 Then
IEReady = True
End If
End If
End Function
'--- ---'
Sub CloseIE
oIe.Quit
Set oIe = Nothing
End Sub