用WINSOCK邮件编程,但下载到LISTVIEW里是标题和时间,邮件来源等信息,怎么样定义双击一邮件,而在另一个FORM里显示内容,我想做成显示源文件,然后在用WEBBROWSER转成网页。有源文件最好,谢谢!
解决方案 »
- VB统一坐标!请高手帮忙!
- 在使用dll时,用createobject创建对象和从工程引用该dll有什么不一样?
- 请把代码完整写下,谢谢
- 怎么回复不了?
- [救命,高分在线等!]手太痒,做好的东西改砸了...
- 如何让一个程序只有一个实例在运行?
- 急,用ADDSHPAE方法总是报越界错!!!!100分!!!
- 如何获得QQ窗口中的“查找好友”按扭?
- SHFileOperation 用此API来拷贝数据,如果不显示进度,不不出现确认对话框,在程序中可不可以终止这次拷贝。
- 相对于access来说 sql有什么优势?能详细讲讲吗?谢了
- 请教,如何设置使得ListView能够一次选择整行记录
- 能在datagrid中增加显示吗?没分了,大家帮帮忙
這樣,要在Listview的雙擊事件判斷有沒點中某個Item,
而不是點在空白地方。如果點中某個Item,那就調用新的Form。
(??怎么样知道点了那一行)
end sub
括号内的能解释一下吗?试了N次了。
Set xItem = ListView1.SelectItem
if not xItem is nothing then
'xItem.text
'xItem.index
end if
'晕,这不是说的已经很清楚了么
'难道还要给你注释一下啊
'-------------------------------dim xItem as ListItem
Set xItem = ListView1.SelectItem'得到当前选择的行
if not xItem is nothing then'如果选择不为空
'xItem.text
'xItem.index'这是选择的行的索引值,可以使用他来确定你选择的是那一行,或者也可以通过从列表中取值
end if
Dim lvhti As LVHITTESTINFO
Call GetCursorPos(lvhti.pt)
Call ScreenToClient(listview1.hwnd, lvhti.pt)
Call SendMessage(listview1.hwnd, LVM_SUBITEMHITTEST, 0, lvhti.pt)
i = lvhti.iItem
If i >= 0 Then
i=i+1'這時候的i就是點的行數
end if
以上代碼寫在雙擊事件中,
其中用的到API函數和常量,你自己查資料。
在mousedown事件中取得点击的x,y值,在DBCLICK事件中用HitTest方法判断是否点到item
If Not (ListView1.SelectedItem Is Nothing) Then
'打开其他窗体的代码
End If
End SubPrivate Sub ListView1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
Set ListView1.SelectedItem = ListView1.HitTest(x, y)
End Sub