Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
我想做一个窗口上面绑定一张表,有一个文本框和按钮用于筛选,但筛选后筛选出来的数据只要符合文本框中的数据时用yellow颜色标出,应该怎么做?以前有DATALIST时我用DRAWCELL做过,但是现在datalist这个取消了,我不知道怎么弄,按照帮助我只能做到整列标出.我的筛选代码为:
CurrentTable.Filter = ""
Dim Filter As String
With e.Form.Controls("TextBox1")
If .Value IsNot Nothing Then
Filter = "'*" & .Value & "*'"
End If
End With
If Filter > "" Then
Tables("订单").Filter = "产品 Like " & Filter & " Or 客户 Like " & Filter & " Or 雇员 Like " & Filter
End If
样式为:标出信息
table也有drawcell,原来怎么做,现在也怎么做
我就是忘了怎么做了,那么示例找不到了.
If e.Col.Name = "产品" Then
If e.Row.IsNull(e.Col.Name) = False
If e.Row(e.Col.Name) = ? (如何等于窗口的文本框的数据) Then
e.Style = "标出信息" '那么用"优秀"样式绘制单元格
End If
End If
我就是忘了怎么做了,那么示例找不到了.
If e.Col.Name = "产品" Then
If e.Row.IsNull(e.Col.Name) = False
If e.Row(e.Col.Name) = ? (如何等于窗口的文本框的数据) Then
e.Style = "标出信息" '那么用"优秀"样式绘制单元格
End If
End If
你不应该吧?:
If e.Row(e.Col.Name) = e.form.Controls("TextBox1").text
事件的说明我看了,还是做不出来,狐爸你帮忙写一个.
If e.Row(e.Col.Name) = ? (如何等于窗口的文本框的数据) Then
你不应该吧?:
If e.Row(e.Col.Name) = e.form.Controls("TextBox1").text
怎么写?这个不对的
窗口的事件才可以用e.form,表示控件所在窗口,也就是本窗口,表事件应该是forms("窗口名"),理由你要好好想想
If forms("xxx").Opened Then
If e.Row(e.Col.Name) = forms("xxx").Controls("TextBox1").Value
End If
End If
其实应该将这个文本框绑定到var变量,直接和var变量比较,效率高一些的
drawcell事件:
If e.Col.Name = "第一列" Then
If e.Row.IsNull(e.Col.Name) = False
if Forms("窗口7").opened
If e.Row(e.Col.Name) = Forms("窗口7").Controls("TextBox1").text Then
e.Style = "样式1" '那么用"优秀"样式绘制单元格
end if
End If
End If
End If
窗口textbox控件的 textchanged事件:
With CurrentTable
.StopRedraw
.ResumeRedraw
End With
我知道怎么回事?其实我第一次就对了,少了一句 If forms("xxx").Opened Then,没有判断窗口是不是打开?
明白了,谢谢!已经OK了