看谁能做出来?哈哈!

dragonsou 2001-08-04 05:11:08
在VB中怎样才能使用IE的自动完成填写功能?
用combobox控件。其实你所要做的就是如何让这个combox实现自动在下拉列表中选择已经存在的项目。
...全文
65 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
DevilXelloss 2001-08-04
  • 打赏
  • 举报
回复
下面的简单代码可以实现一个 IE 地址 Combo 的效果。只需配合 ImageList,就可以加图标了。通过 SendMessage 可以添加列表内容,我不啰嗦了:

Option Explicit

Private hWndComboEx As Long

Private Sub Form_Load()
Dim initComCtrl As INITCOMMONCONTROLSEXst

With initComCtrl
.dwICC = ICC_USEREX_CLASSES
.dwSize = Len(initComCtrl)
End With

hWndComboEx = CreateWindowEx(0&, _
WC_COMBOBOXEX, _
"", _
WS_CHILD Or WS_VISIBLE Or CBS_DROPDOWN, _
10, _
10, _
300, _
21, _
Me.hWnd, _
ByVal 0&, _
App.hInstance, _
ByVal 0&)

If hWndComboEx > 0 Then
SendMessageVal hWndComboEx, _
WM_SETFONT, _
SendMessageVal(hWnd, WM_GETFONT, 0&, ByVal 0&), _
ByVal &HFFFFFFFF
SHAutoComplete SendMessageVal(hWndComboEx, CBEM_GETEDITCONTROL, 0&, ByVal 0&), SHACF_URLALL Or SHACF_FILESYSTEM
End If
End Sub

Private Sub Form_Unload(Cancel As Integer)
If hWndComboEx > 0 Then DestroyWindow hWndComboEx
End Sub
a_geng 2001-08-04
  • 打赏
  • 举报
回复
gz
wbdx 2001-08-04
  • 打赏
  • 举报
回复
同意 huanggx(大侠) 
但是只要用窗体做成 拉框部分 就可以了,将窗体 SHOW ,OnFrm
newyon 2001-08-04
  • 打赏
  • 举报
回复
gz
huanggx 2001-08-04
  • 打赏
  • 举报
回复
并非如此简单。如果我想在textbox中也使用该功能,怎么办?
尤其是,如何把这个“自动完成”功能应用于任何输入控件?也就是说,做成dll?
功能不难实现,但要想把那个下拉框部分置于所有窗口之上,就不是很容易。甚至,如果输入控件所在的窗口缩小的时候,这个下拉框也不能挡住(即,下拉框要超出该窗口的边界)

我曾经做成过这个功能。要用一些API才可以。
xuejinlong 2001-08-04
  • 打赏
  • 举报
回复
简单,用一个文本数据库记录用户曾经输入的东西,然后combox onchange事件中从库中用like查然后插入combox中。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧