bbe 进来 谢谢

youxizhe 2003-10-18 12:55:24
Public Function ListView_SetItemState(hwndLV As Long, i As Long, state As LVITEM_state, mask As LVITEM_state) As Boolean
Dim lvi As LVITEM
lvi.state = LVIS_SELECTED
lvi.stateMask = mask
ListView_SetItemState = SendMessage(hwndLV, LVM_SETITEMSTATE, ByVal 3, lvi)
End Function

把里面的常数值 和 自定义变量 提供一下
谢谢
...全文
144 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
youxizhe 2003-10-19
  • 打赏
  • 举报
回复
我的源代码是这样的 请帮我修改一下

Private Sub Command4_Click()
ListView_SetItemState ListView1.hwnd, Val(Text1.Text), LVIS_SELECTED, LVIS_SELECTED
ListView1.SetFocus
End Sub
-----------------------------------------------------------------------------

Function ListView_SetItemState(hwndLV As Long, i As Long, state As LVITEM_state, mask As LVITEM_state) As Boolean
Dim lvi As LVITEM
lvi.state = LVIS_SELECTED
lvi.stateMask = mask


ListView_SetItemState = SendMessage(hwndLV, LVM_SETITEMSTATE, ByVal i, lvi)
End Function


youxizhe 2003-10-19
  • 打赏
  • 举报
回复
可是有一个问题:
虽然用这个函数 可以选中某个item
但是 我 Print ListView1.SelectedItem.Key
以后发现 这个key 的值都不变的 这是为什么
youxizhe 2003-10-19
  • 打赏
  • 举报
回复
谢谢你 现在可以了
bbe 2003-10-19
  • 打赏
  • 举报
回复
这些东东都可在vc的头文件里找到的
也可下载http://www.mvps.org/btmtz/enumdeskvb/edeskvb2.zip看看

Private Const LVM_FIRST = &H1000
Private Const LVM_SETITEMSTATE = (LVM_FIRST + 43)

Private Enum LVITEM_mask
LVIF_TEXT = &H1
LVIF_IMAGE = &H2
LVIF_PARAM = &H4
LVIF_STATE = &H8

LVIF_INDENT = &H10
LVIF_NORECOMPUTE = &H800

LVIF_DI_SETITEM = &H1000
End Enum
Private Type LVITEM
mask As LVITEM_mask
iItem As Long
iSubItem As Long
state As LVITEM_state
stateMask As Long
pszText As Long
cchTextMax As Long
iImage As Long
lParam As Long
iIndent As Long

End Type
Private Enum LVITEM_state
LVIS_FOCUSED = &H1
LVIS_SELECTED = &H2
LVIS_CUT = &H4
LVIS_DROPHILITED = &H8
LVIS_ACTIVATING = &H20

LVIS_OVERLAYMASK = &HF00
LVIS_STATEIMAGEMASK = &HF000
End Enum

Private Enum LVMessages
LVM_FIRST = &H1000

LVM_GETBKCOLOR = (LVM_FIRST + 0)
LVM_SETBKCOLOR = (LVM_FIRST + 1)
LVM_GETIMAGELIST = (LVM_FIRST + 2)

LVM_SETIMAGELIST = (LVM_FIRST + 3)
LVM_GETITEMCOUNT = (LVM_FIRST + 4)

#If UNICODE Then
LVM_GETITEM = (LVM_FIRST + 75)
LVM_SETITEM = (LVM_FIRST + 76)
LVM_INSERTITEM = (LVM_FIRST + 77)
#Else
LVM_GETITEM = (LVM_FIRST + 5)
LVM_SETITEM = (LVM_FIRST + 6)
LVM_INSERTITEM = (LVM_FIRST + 7)
#End If

LVM_DELETEITEM = (LVM_FIRST + 8)
LVM_DELETEALLITEMS = (LVM_FIRST + 9)

LVM_GETCALLBACKMASK = (LVM_FIRST + 10)
LVM_SETCALLBACKMASK = (LVM_FIRST + 11)

LVM_GETNEXTITEM = (LVM_FIRST + 12)

#If UNICODE Then
LVM_FINDITEM = (LVM_FIRST + 83)
#Else
LVM_FINDITEM = (LVM_FIRST + 13)
#End If

LVM_GETITEMRECT = (LVM_FIRST + 14)
LVM_SETITEMPOSITION = (LVM_FIRST + 15)
LVM_GETITEMPOSITION = (LVM_FIRST + 16)

#If UNICODE Then
LVM_GETSTRINGWIDTH = (LVM_FIRST + 87)
#Else
LVM_GETSTRINGWIDTH = (LVM_FIRST + 17)
#End If

LVM_HITTEST = (LVM_FIRST + 18)
LVM_ENSUREVISIBLE = (LVM_FIRST + 19)
LVM_SCROLL = (LVM_FIRST + 20)
LVM_REDRAWITEMS = (LVM_FIRST + 21)
LVM_ARRANGE = (LVM_FIRST + 22)

#If UNICODE Then
LVM_EDITLABEL = (LVM_FIRST + 118)
#Else
LVM_EDITLABEL = (LVM_FIRST + 23)
#End If

LVM_GETEDITCONTROL = (LVM_FIRST + 24)

#If UNICODE Then
LVM_GETCOLUMN = (LVM_FIRST + 95)
LVM_SETCOLUMN = (LVM_FIRST + 96)
LVM_INSERTCOLUMN = (LVM_FIRST + 97)
#Else
LVM_GETCOLUMN = (LVM_FIRST + 25)
LVM_SETCOLUMN = (LVM_FIRST + 26)
LVM_INSERTCOLUMN = (LVM_FIRST + 27)
#End If

LVM_DELETECOLUMN = (LVM_FIRST + 28)
LVM_GETCOLUMNWIDTH = (LVM_FIRST + 29)

LVM_SETCOLUMNWIDTH = (LVM_FIRST + 30)


LVM_GETHEADER = (LVM_FIRST + 31)


LVM_CREATEDRAGIMAGE = (LVM_FIRST + 33)
LVM_GETVIEWRECT = (LVM_FIRST + 34)
LVM_GETTEXTCOLOR = (LVM_FIRST + 35)
LVM_SETTEXTCOLOR = (LVM_FIRST + 36)
LVM_GETTEXTBKCOLOR = (LVM_FIRST + 37)
LVM_SETTEXTBKCOLOR = (LVM_FIRST + 38)
LVM_GETTOPINDEX = (LVM_FIRST + 39)
LVM_GETCOUNTPERPAGE = (LVM_FIRST + 40)
LVM_GETORIGIN = (LVM_FIRST + 41)
LVM_UPDATE = (LVM_FIRST + 42)
LVM_SETITEMSTATE = (LVM_FIRST + 43)
LVM_GETITEMSTATE = (LVM_FIRST + 44)

#If UNICODE Then
LVM_GETITEMTEXT = (LVM_FIRST + 115)
LVM_SETITEMTEXT = (LVM_FIRST + 116)
#Else
LVM_GETITEMTEXT = (LVM_FIRST + 45)
LVM_SETITEMTEXT = (LVM_FIRST + 46)
#End If

LVM_SETITEMCOUNT = (LVM_FIRST + 47)

LVM_SORTITEMS = (LVM_FIRST + 48)
LVM_SETITEMPOSITION32 = (LVM_FIRST + 49)
LVM_GETSELECTEDCOUNT = (LVM_FIRST + 50)
LVM_GETITEMSPACING = (LVM_FIRST + 51)

#If UNICODE Then
LVM_GETISEARCHSTRING = (LVM_FIRST + 117)
#Else
LVM_GETISEARCHSTRING = (LVM_FIRST + 52)
#End If


LVM_SETICONSPACING = (LVM_FIRST + 53)
LVM_SETEXTENDEDLISTVIEWSTYLE = (LVM_FIRST + 54)
LVM_GETEXTENDEDLISTVIEWSTYLE = (LVM_FIRST + 55)

LVM_GETSUBITEMRECT = (LVM_FIRST + 56)
LVM_SUBITEMHITTEST = (LVM_FIRST + 57)
LVM_SETCOLUMNORDERARRAY = (LVM_FIRST + 58)
LVM_GETCOLUMNORDERARRAY = (LVM_FIRST + 59)
LVM_SETHOTITEM = (LVM_FIRST + 60)
LVM_GETHOTITEM = (LVM_FIRST + 61)
LVM_SETHOTCURSOR = (LVM_FIRST + 62)
LVM_GETHOTCURSOR = (LVM_FIRST + 63)
LVM_APPROXIMATEVIEWRECT = (LVM_FIRST + 64)



LVM_SETWORKAREAS = (LVM_FIRST + 65)
LVM_GETWORKAREAS = (LVM_FIRST + 70)
LVM_GETNUMBEROFWORKAREAS = (LVM_FIRST + 73)
LVM_GETSELECTIONMARK = (LVM_FIRST + 66)
LVM_SETSELECTIONMARK = (LVM_FIRST + 67)
LVM_SETHOVERTIME = (LVM_FIRST + 71)
LVM_GETHOVERTIME = (LVM_FIRST + 72)
LVM_SETTOOLTIPS = (LVM_FIRST + 74)
LVM_GETTOOLTIPS = (LVM_FIRST + 78)

#If UNICODE Then
LVM_SETBKIMAGE = (LVM_FIRST + 138)
LVM_GETBKIMAGE = (LVM_FIRST + 139)
#Else
LVM_SETBKIMAGE = (LVM_FIRST + 68)
LVM_GETBKIMAGE = (LVM_FIRST + 69)
#End If


LVM_SETUNICODEFORMAT = CCM_SETUNICODEFORMAT
LVM_GETUNICODEFORMAT = CCM_GETUNICODEFORMAT

End Enum


youxizhe 2003-10-18
  • 打赏
  • 举报
回复
可是他提供的 并没有 这个的函数里面的常数 和 自定义变量
rainstormmaster 2003-10-18
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/2366/2366715.xml?temp=.7017786里 goodname008(卢培培,LPP Software) 不是已经贴了吗

1,486

社区成员

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

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