【问题标题】:color one listbox based on another listbox value根据另一个列表框值为一个列表框着色
【发布时间】:2014-10-07 23:23:07
【问题描述】:

我正在构建一个程序来管理我在 Visual Basic 中的 DVD 收藏 (8) 我将一个文件读入 listbox1,其中包含我的所有数据,格式如下: (DVD标题)(4位) 鬼山上的房子1049 行尸走肉(第 1 季碟片 1)2022 活死人之夜2044 亡灵黎明3011 我在你的坟墓上吐口水1010

我在 listbox1 中搜索任何匹配项(减去最后 4 个数字) 匹配的标题放入listbox2,4位数字放入listbox3 我想在 listbox2 中找到“3”的地方为 listbox2 中的项目着色。

如果我将 4 位数字与标题一起输入,我可以使用此处找到的代码更改颜色。

所以如果我搜索“死亡”,我会进入 listbox2 行尸走肉(Season 1 Disc 1)(这是黑色的,因为它不是以 3 开头的) 活死人之夜(这是黑色的,因为它不是以 3 开头的) Dawn Of The Dead(这个项目应该是绿色的,因为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()

结束子

我在这个网站上找到了上面的代码,但我找不到如何使用两个列表框。

对不起,我的解释很糟糕 - 我只是在玩 Visual Basic - 我在学校学习了 fortran、cobol 和 RPGII

【问题讨论】:

    标签: colors listbox


    【解决方案1】:

    我一直在弄乱 IF 语句 - 发现我可以引用另一个列表框并且能够影响有问题的列表框。

    If Mid(ListBox3.Items(e.Index).ToString(), 1, 1) = "3" Then

    这样,它只查看四个数字的第一个数字,如果它命中可能会匹配列表框,仅颜色为 dvd 的标题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多