listview和treeview可以通过hittest来实现对各项的控制,那么listbox有没 有方法方法实现对其项的控制呢?答案上肯定的。
下面的例子实现的listbox各项的自动选择,就象弹出combobox的下拉框,然后 移动鼠标时,光条跟着移动。
>>步骤1----建立新工程,在窗体上放置listbox控件。
>>步骤2----编写如下代码:
private declare function sendmessage lib "user32" alias "sendmessagea" _
(byval hwnd as long, byval wmsg as long, byval wparam as long, _
lparam as any) as long
private const lb_itemfrompoint = &h1a9
private sub form_load()
with list1
.additem "程序编制:vb编程乐园"
.additem "mailto:vbeden@21cn.com"
.additem "http://www.vbeden.com"
end with
end sub
private sub list1_mousemove(button as integer, shift as integer, _
x as single, y as single)
dim lxpoint as long
dim lypoint as long
dim lindex as long
lxpoint = clng(x / screen.twipsperpixelx)
lypoint = clng(y / screen.twipsperpixely)
with list1
lindex = sendmessage(.hwnd, lb_itemfrompoint, 0, _
byval ((lypoint * 65536) + lxpoint))
if (lindex >= 0) and (lindex <= .listcount) then
.selected(lindex) = true
else
.selected(lindex) = false
end if
end with
end sub
>>步骤3----编译运行,鼠标在listbox上移动,看看是不是自动选择。
************************************************************************************
listview控件和treeview控件都提供了hittest方法。这个方法返回对位于x和 y 坐标的 listitem 对象或 node 对象的引用。通常与拖放操作或鼠标移动操作一 起使用,来确定鼠标下的目标项在当前位置是否可用。
其语法为:
object.hittest (x as single, y as single)
下面的例子实现listview不同的项具有不同的tooltiptext。
>>步骤1----建立新工程,加入部件“microsoft common controls 6.0(sp3)”。
>>步骤2----在工程上放置listview控件。
>>步骤3----编写如下代码:
private sub form_load()
listview1.listitems.add , , "程序编制:vb编程乐园"
listview1.listitems.add , , "email:vbeden@21cn.com"
listview1.listitems.add , , "http://www.vbeden.com"
end sub
private sub listview1_mousemove(button as integer, shift as integer, x as single, y as single)
dim iitem as listitem
set iitem = listview1.hittest(x, y)
if iitem is nothing then exit sub
listview1.tooltiptext = iitem.text
end sub
>>步骤4----编译运行,看看是不是不同的项对应不同的提示。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器