
vb高手(mshflexgrid控件问题)请进
用mshflexgrid控件,数据来自adodc1邦定的Access数据(900条以上,不定量)。我要实现:1.如果库存量大于安全库存小于上限库存,对于行为绿色。2.如果...
用mshflexgrid控件,数据来自adodc1邦定的Access数据(900条以上,不定量)。我要实现:1.如果库存量大于安全库存小于上限库存,对于行为绿色。2.如果小于安全库存为红色。3.如果大于上限库存为蓝色,代码要怎么写?
库存量在第3列、安全库存为第7列、上限库存为第8列。
望高手详细解答!
补充说明:根据条件改变颜色,库存量会随时变,所以颜色会随条件改变! 展开
库存量在第3列、安全库存为第7列、上限库存为第8列。
望高手详细解答!
补充说明:根据条件改变颜色,库存量会随时变,所以颜色会随条件改变! 展开
1个回答
展开全部
你这个就是FLEX控件美化问题,各行使用不同的颜色,我本来有代码事先的,但我忘了,代码不在我家里的电脑上,在办公室电脑上有
看列
Private Sub setColor(msfg As MSFlexGrid, row As Long, color As Long, bkcolor As Long)
For i = 1 To msfg.Cols - 1
msfg.row = row
msfg.Col = i
msfg.CellForeColor = color '前景色
msfg.CellBackColor = bkcolor '背景色
Next
End Sub
Private Sub Command1_Click()
setColor MSFlexGrid1, 3, &HFFFF&, &H8000000D
End Sub
Private Sub Form_Load()
MSFlexGrid1.Rows = 5
MSFlexGrid1.Cols = 5
For i = 1 To 4
For j = 1 To 4
MSFlexGrid1.TextMatrix(i, j) = j
Next
Next
End Sub
你这题的答案为
Private Sub Command1_Click()
me.msflexgrid1.visable=false
Dim s As String
Dim s1 As String
Dim s2 As String
Dim i As Long
Dim j As Long
For i = 1 To Me.MSFlexGrid1.Rows - 1
s = Me.MSFlexGrid1.TextMatrix(i, 3)
s1 = Me.MSFlexGrid1.TextMatrix(i, 7)
s2 = Me.MSFlexGrid1.TextMatrix(i, 8)
If Trim(s) > Trim(s3) Then
For j = 1 To Me.MSFlexGrid1.Cols - 1
Me.MSFlexGrid1.Row = i
Me.MSFlexGrid1.Col = j
Me.MSFlexGrid1.CellBackColor = vbBlue
Next
ElseIf Trim(s) <= Trim(s3) And Trim(s) > Trim(s2) Then
For j = 1 To Me.MSFlexGrid1.Cols - 1
Me.MSFlexGrid1.Row = i
Me.MSFlexGrid1.Col = j
Me.MSFlexGrid1.CellBackColor = vbGreen
Next
Else
For j = 1 To Me.MSFlexGrid1.Cols - 1
Me.MSFlexGrid1.Row = i
Me.MSFlexGrid1.Col = j
Me.MSFlexGrid1.CellBackColor = vbRed
Next
End If
Next
me.msflexgrid1.visable=true
End Sub
看列
Private Sub setColor(msfg As MSFlexGrid, row As Long, color As Long, bkcolor As Long)
For i = 1 To msfg.Cols - 1
msfg.row = row
msfg.Col = i
msfg.CellForeColor = color '前景色
msfg.CellBackColor = bkcolor '背景色
Next
End Sub
Private Sub Command1_Click()
setColor MSFlexGrid1, 3, &HFFFF&, &H8000000D
End Sub
Private Sub Form_Load()
MSFlexGrid1.Rows = 5
MSFlexGrid1.Cols = 5
For i = 1 To 4
For j = 1 To 4
MSFlexGrid1.TextMatrix(i, j) = j
Next
Next
End Sub
你这题的答案为
Private Sub Command1_Click()
me.msflexgrid1.visable=false
Dim s As String
Dim s1 As String
Dim s2 As String
Dim i As Long
Dim j As Long
For i = 1 To Me.MSFlexGrid1.Rows - 1
s = Me.MSFlexGrid1.TextMatrix(i, 3)
s1 = Me.MSFlexGrid1.TextMatrix(i, 7)
s2 = Me.MSFlexGrid1.TextMatrix(i, 8)
If Trim(s) > Trim(s3) Then
For j = 1 To Me.MSFlexGrid1.Cols - 1
Me.MSFlexGrid1.Row = i
Me.MSFlexGrid1.Col = j
Me.MSFlexGrid1.CellBackColor = vbBlue
Next
ElseIf Trim(s) <= Trim(s3) And Trim(s) > Trim(s2) Then
For j = 1 To Me.MSFlexGrid1.Cols - 1
Me.MSFlexGrid1.Row = i
Me.MSFlexGrid1.Col = j
Me.MSFlexGrid1.CellBackColor = vbGreen
Next
Else
For j = 1 To Me.MSFlexGrid1.Cols - 1
Me.MSFlexGrid1.Row = i
Me.MSFlexGrid1.Col = j
Me.MSFlexGrid1.CellBackColor = vbRed
Next
End If
Next
me.msflexgrid1.visable=true
End Sub

2023-12-06 广告
UIkit是一套轻量级、模块化且易于使用的开源UI组件库,由YOOtheme团队开发。它提供了丰富的界面元素,包括按钮、表单、表格、对话框、滑块、下拉菜单、选项卡等等,适用于各种类型的网站和应用程序。UIkit还支持响应式设计,可以根据不同...
点击进入详情页
本回答由网易云信提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询