首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

网页上有一个"浏览"按钮,以选择本机图片路径.问:怎么用VB程序自动填写给定的图片路径

2012-01-23 
网页上有一个浏览按钮,以选择本机图片路径.问:如何用VB程序自动填写给定的图片路径?网页上有一个浏览

网页上有一个"浏览"按钮,以选择本机图片路径.问:如何用VB程序自动填写给定的图片路径?
网页上有一个"浏览"按钮,以选择本机图片路径.问:如何用VB程序自动填写给定的图片路径(假设本机上的图片路径是:c:\picture\1.jpg)?希望不使用sendkeys命令.

网页源代码:
<table>
<tr>
<td class='submit_right'><div class='inp_title'>Images</div></td>
<td>
<input type="file" name='file[]' id="first_file_element" class="input2" onfocus="this.className='input2';">
<script type="text/javascript">
var multi_selector = new MultiSelector( document.getElementById( 'files_list' ), 30 );
multi_selector.addElement( document.getElementById( 'first_file_element' ) );
</script>
</td>
</tr>
</table>

我的程序是:
For i = 0 To WebBrowser1.Document.All.length - 1
  On Error Resume Next
  If WebBrowser1.Document.All(i).tagName = "INPUT" Then
  If WebBrowser1.Document.All(i).id = "first_file_element" Then
  WebBrowser1.Document.All(i).Click '会跳出"浏览"的文件对话框.接下来如何在对话框中输入:c:\picture\1.jpg,并确认,就不会编了.  
  End If
  End If
  Next

[解决办法]
帮顶
[解决办法]
假设那个框的句柄是hhh,关于控件句柄的获取使用EnumChildWindows来获取,具体参考相关资料

SendMessage CLng(hhh), WM_SETTEXT, 0, ByVal "c:\1.jpg"
[解决办法]

探讨
webbrowser1.document.getElementById(#"first_file_element").value="c:\1.jpg",报错,去掉#号,没反应
WebBrowser1.Document.All(i).Click 改成WebBrowser1.Document.All(i).value="c:\1.jpg",也没反应.
网页中的这个貌似文本框的家伙,既无法粘贴,也没法用键盘输入任何字母,只能点击它旁边的"浏览"按键,然后跳出"选择要加载的文件"对话框,输入图片路径后,点击"打开"按键.
真不知道要怎么解决这个问题了.获得"选择要加载的文件"对话框句柄并SendMessage的程序,也没成功,套用网上的几个例子,都不行,跳出"选择要加载的文件"对话框时,没收到获得句柄的提示,当关掉对话框时却提示没获得句柄.所以,结果还是和原来一样,没有进展.望高人给个具体的代码.万分感谢.

[解决办法]
使用vb的sendkey 可以发送tab按键,你只要知道需要按几次才能移动到该输入框,那么就发送几次tab。然后就是发送文件路径进去了。我以前就这么实现的
[解决办法]
标题是“单击图片时直接出现另存为对话框”是不是对你有帮助
http://www.west263.com/info/html/wangyezhizuo/Javascript/20080225/33187.html
[解决办法]
VB code
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)Clipboard.SetText "c:\boot.ini"If WebBrowser1.Object Is pDisp Then    Dim objDoc As Object, objF As Object    Set objDoc = WebBrowser1.Document    Set objF = objDoc.getElementById("first_file_element") 'first_file_element是File类型的Input控件的ID    objF.focus    DoEvents    SendKeys "^v"End IfEnd Sub
[解决办法]
探讨
引用:
你不点击哪个first_file_element,你直接粘贴内容到前面哪个文本框

这里无法粘贴,点右键看到"粘贴"是灰色的.ctrl+v也不行.

[解决办法]
关注.

明天再看,先睡觉.

热点排行