我正在构建一个程序来管理我在Visual Basic中的DVD集合(8) 我将一个文件读入listbox1,其中包含我的所有数据,其格式如下: (DVD的标题)(4位数) House On Haunted Hill1049 行尸走肉(第1季第1碟)2022 活死人之夜2044 死亡的黎明3011 我吐你的Grave1010
我在listbox1中搜索任何匹配项(减去最后4位数) 匹配的标题被抛入listbox2,4位数字被放入listbox3 我想在listbox2中为" 3"可以在listbox2中找到。
如果我将4位数字放入标题,我可以使用此处的代码更改颜色。
所以,如果我搜索“死亡”的话。我会进入listbox2 行尸走肉(第1季第1碟)(这是黑色的,因为它不是以3开头) 活死人之夜(这是黑色的,因为它不是以3开头) 死亡的黎明(此项目将为绿色,因为listbox3中的值为3011
Private Sub ListBox1_DrawItem(sender As System.Object,e As System.Windows.Forms.DrawItemEventArgs)处理ListBox1.DrawItem e.DrawBackground()
If ListBox1.Items(e.Index).ToString() = "herp" Then
e.Graphics.FillRectangle(Brushes.LightGreen, e.Bounds)
End If
e.Graphics.DrawString(ListBox1.Items(e.Index).ToString(), e.Font, Brushes.Black, New System.Drawing.PointF(e.Bounds.X, e.Bounds.Y))
e.DrawFocusRectangle()
End Sub
我在本网站上找到的上述代码,但我无法找到如何使用它的两个列表框。
对不起我的解释不好 - 我只是玩视觉基础 - 我上学了我学过fortran,cobol和RPGII
答案 0 :(得分:0)
我一直在搞乱IF语句 - 发现我可以引用其他列表框并且能够影响有问题的列表框。
如果是Mid(ListBox3.Items(e.Index).ToString(),1,1)=" 3"然后
这样它只会查看四个数字的第一个数字,如果它匹配的话,列表框只能匹配DVD的标题。