在vb中使用listview控件时,如何能改变其中某一行的颜色,求助了 望高手指点啊

如图所示,一整行的颜色都变,请大神帮忙呀ListView1.SelectedItem.ListSubItems.Item(2).ForeColor=vbRed我这样改的时... 如图所示,一整行的颜色都变,请大神帮忙呀

ListView1.SelectedItem.ListSubItems.Item(2).ForeColor = vbRed 我这样改的时候只能改变其中某一单元格的字体颜色,现在我想一整行都换颜色,怎么办 ??对了 另外还有个问题,怎么在listview双击事件里,怎么确定我点击了 哪一行,例:如果我双击第行时跳出一个窗体,双击第二行时则跳出另一窗体,望大神指导啊
展开
 我来答
unsamesky
推荐于2017-12-15 · TA获得超过2735个赞
知道小有建树答主
回答量:859
采纳率:100%
帮助的人:434万
展开全部

既然你可以改变某个Item的颜色,那么用一个循环不就可以实现了么?

似乎这个办法是最好的办法了。

Private Sub ListView1_Click()
   ListView1.SelectedItem.ForeColor = vbRed
   For i = 1 To ListView1.ColumnHeaders.Count - 1
       ListView1.SelectedItem.ListSubItems(i).ForeColor = vbRed
   Next
End Sub

双击取得行号.SelectedItem.Index属性,使用代码如下:

Private Sub ListView1_DblClick()
    MsgBox ListView1.SelectedItem.Index
End Sub
追问
根据你说的第一个问题已经解决了 ,谢谢你 我会把你采纳为满意答案的
不过第二个可能是我表达的不清楚,我想让他实现的功能是,双击其中一行时,会出现一个窗体(from1),而如果双击的不是这一行则跳出另一个窗体(from2),我现在就是不会这个判断的 麻烦你在教我一次吧 对了 这个文题我问了三次 你找一下就在vb专区里 找着了随便答一下 分数都给你 嘿嘿
追答

VB里面对于窗体的引用是比较麻烦的。

一般情况下,没有窗体的集合供我们来使用。所以我们要么是在第一个窗体加载的同时加载其他窗体,那么我们可以使用下面的方法来调用窗体。

Private Sub ListView1_DblClick()
    VB.Global.Forms(ListView1.SelectedItem.Index - 1).Show
End Sub

Private Sub Form_Load()
    Load Form2
    Load Form3
End Sub

除此之外,比较靠谱的做法就是,利用条件语句,一个一个选择。例如:

Private Sub ListView1_DblClick()
    Select Case ListView1.SelectedItem.Index
        Case 1: Form1.Show
        case 2: Form2.Show
    End Select
End Sub
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式