Foxtable(狐表)用户栏目专家坐堂 → 关于闪屏问题


  共有4537人关注过本帖树形打印复制链接

主题:关于闪屏问题

帅哥哟,离线,有人找我吗?
裴保民
  21楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/4/17 9:32:00 [只看该作者]

AfterLoad

Dim trv As WinForm.TreeView = e.Form.Controls("zcflTreeView")
trv.GenerateTree("支出分类","支出分类代码","支出目录", ".")


DropDownOpening

Dim trv As WinForm.TreeView = e.Form.Controls("zcflTreeView")
Dim zcfl As WinForm.DropDownBox = Forms("应付明细窗体").Controls("zcflDropBox")
If zcfl.Value<>"" Then
    Return
End If
trv.SelectedNode = trv.Nodes(0)
Dim dr As DataRow = trv.Nodes(0).DataRow
Dim str As String = DataTables("支出分类").GetComboListString("支出目录","支出分类代码='" & dr("支出分类代码") & "' Or 支出分类代码 Like '" & dr("支出分类代码") & "%'")
Tables("应付交易流水").Filter = "交易分类 in ('" & str.Replace("|","','") & "')"
e.Form.DropDownBox.Value = trv.Nodes(0).Text

DropDownOpened

e.Form.panel.parent.width = e.Form.DropDownBox.Width



NodeMouseDoubleClick

Forms("应付明细窗体").Controls("zcflDropBox").text=e.node.Text
Forms("应付明细窗体").Controls("czButton").PerformClick
Forms("以应付类型查找选择窗体").DropDownBox.CloseDropdown()

[此贴子已经被作者于2020/4/17 9:34:46编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  22楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/17 10:00:00 [只看该作者]

打开又关闭下拉的代码放在那里的?整个事件代码发上来

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  23楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/17 10:19:00 [只看该作者]

1楼看到了,如果是在timetick事件

这样改改试试:
e.Form.TimerEnabled = False
dim dr as datarow = datatables("支出分类").find(tables("支出分类").filter,"支出分类代码")
if dr isnot nothing then
     e.Form.Controls("srflDropBox").text = dr("支出目录")
end if

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  24楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/4/17 11:01:00 [只看该作者]

蓝老师还是弹出未将对象引用错误框

图片点击可在新窗口打开查看此主题相关图片如下:截图02.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:截图03.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2020/4/17 11:06:46编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  25楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/17 11:10:00 [只看该作者]

不需要在打开和关闭下拉窗口,也不需要取下拉窗口里面的控件

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  26楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/4/17 11:19:00 [只看该作者]

Case dalei =e.Form.Controls("suoyuoRadioButton").Checked
                With e.Form.Controls("zcflDropBox")
                    If .Value Is Nothing Then
                        Tables("应付明细窗体_yfTable").GrandTotal = False
                        t = Tables("应付明细窗体_yfTable")
                        removeHandler t.grid.Paint, AddressOf Grid_Paint
                        Tables("应付明细窗体_yfTable").DataSource  = DataTables("应付交易流水")
                        Tables("收入明细窗体_srTable").Filter =""
                        Tables("应付明细窗体_yfTable").SetColVisibleWidth("单号|110|应付金额|100|已付金额|100|交易分类原始值|160|记账日期|90|付款限期|90|经手人原始值|80|说明|200")
                        .DataCols("交易分类原始值").Caption = "支出分类"
                        .DataCols("经手人原始值").Caption = "经手人"
                        t = Tables("应付明细窗体_yfTable")
                        t.Cols("应付金额").GrandTotal = True '指定要合计的列
                        t.Cols("已付金额").GrandTotal = True '指定要合计的列
                        t.GrandTotal = True '显示合计模式
                        t.Grid.Name = t.Name
                        AddHandler t.grid.Paint, AddressOf Grid_Paint
                        Return
                    End If
                    If .Value IsNot Nothing Then                                                          应该是下面的代码原因,但是去不掉
                        trv=Forms("以应付类型查找选择窗体").Controls("zcflTreeView")
                        If trv.SelectedNode IsNot Nothing Then
                            dr = trv.SelectedNode.DataRow()
                            Dim str As String = DataTables("支出分类").GetComboListString("支出目录","支出分类代码='" & dr("支出分类代码") & "' Or 支出分类代码 Like '" & dr("支出分类代码") & "%'")
                            Filter = "交易分类 In ('" & str.Replace("|","','") & "')"
                        End If
                    End If
                End With
                With e.Form.Controls("fkxqDateTimePicker")
                    If .Value IsNot Nothing Then
                        If Filter > "" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "付款限期= '" & .Value & "'"
                    End If
                End With
                With e.Form.Controls("jbrComboBox")
                    If .Value IsNot Nothing AndAlso.value<>"所有经办人"  Then
                        If Filter >"" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "经手人 = '" & .Value & "'"
                    End If
                End With
                With e.Form.Controls("bzsmTextBox")
                    If .text <>"" Then
                        If Filter >"" Then
                            Filter = Filter  & " And "
                        End If
                       Filter = Filter & "说明 Like '%" & .text & "%'"

                    End If
                End With
                Tables("应付明细窗体_yfTable").GrandTotal = False
                t = Tables("应付明细窗体_yfTable")
                removeHandler t.grid.Paint, AddressOf Grid_Paint
                Tables("应付明细窗体_yfTable").DataSource  = DataTables("应付交易流水")
                Tables("应付明细窗体_yfTable").SetColVisibleWidth("单号|110|应付金额|100|已付金额|100|交易分类原始值|160|记账日期|90|付款限期|90|经手人原始值|80|说明|200")
                Tables("应付明细窗体_yfTable").Filter = Filter
                Dim dt As DataTable = Tables("应付明细窗体_yfTable").DataTable
                With dt
                     .DataCols("交易分类原始值").Caption = "支出分类"
                     .DataCols("经手人原始值").Caption = "经手人"
                    .BuildHeader()
                End With
                t = Tables("应付明细窗体_yfTable")
                t.Cols("应付金额").GrandTotal = True '指定要合计的列
                t.Cols("已付金额").GrandTotal = True '指定要合计的列
                t.GrandTotal = True '显示合计模式
                t.Grid.Name = t.Name
                AddHandler t.grid.Paint, AddressOf Grid_Paint
 Case  dalei =e.Form.Controls("bennianRadioButton").Checked
                Dim y As Integer = Date.Today.Year
                Dim dt1 As New Date(y, 1, 1)
                Dim dt2 As New Date(y, 12, 31)
                With e.Form.Controls("zcflDropBox")
                    If .Value Is Nothing  Then
                        Tables("应付明细窗体_yfTable").GrandTotal = False
                        t = Tables("应付明细窗体_yfTable")
                        removeHandler t.grid.Paint, AddressOf Grid_Paint
                        Tables("应付明细窗体_yfTable").DataSource  = DataTables("应付交易流水")
                        Tables("应付明细窗体_yfTable").Filter = "记账日期>= #" & dt1 & "# And 记账日期 <= #" & dt2 & "# "
                        Tables("应付明细窗体_yfTable").SetColVisibleWidth("单号|110|应付金额|100|已付金额|100|交易分类原始值|160|记账日期|90|付款限期|90|经手人原始值|80|说明|200")
                        t = Tables("应付明细窗体_yfTable")
                        t.Cols("应付金额").GrandTotal = True '指定要合计的列
                        t.Cols("已付金额").GrandTotal = True '指定要合计的列
                        t.GrandTotal = True '显示合计模式
                        t.Grid.Name = t.Name
                        AddHandler t.grid.Paint, AddressOf Grid_Paint
                        Return
                    End If
                    If .Value IsNot Nothing Then
                        Filter = Filter & "记账日期>= #" & dt1 & "# And 记账日期 <= #" & dt2 & "# "
                        If Filter > "" Then
                            Filter = Filter & " And "
                        End If
                        trv=Forms("以应付类型查找选择窗体").Controls("zcflTreeView")                                    应该是下面的代码原因,但是去不掉
                        If trv.SelectedNode IsNot Nothing Then                                                                                           
                            dr = trv.SelectedNode.DataRow()
                            Dim str As String = DataTables("支出分类").GetComboListString("支出目录","支出分类代码='" & dr("支出分类代码") & "' Or 支出分类代码 Like '" & dr("支出分类代码") & "%'")
                            Filter = Filter & "交易分类 In ('" & str.Replace("|","','") & "')"
                        End If
                    End If
                End With
                With e.Form.Controls("fkxqDateTimePicker")
                    If .Value IsNot Nothing Then
                        If Filter > "" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "付款限期 = '" & .Value & "'"
                    End If
                End With
                With e.Form.Controls("jbrComboBox")
                    If .Value IsNot Nothing AndAlso.value<>"所有经办人"  Then
                        If Filter >"" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "经手人 = '" & .Value & "'"
                    End If
                End With
                With e.Form.Controls("bzsmTextBox")
                    If .text<>"" Then
                        If Filter >"" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "说明 Like '%" & .text & "%'"
                    End If
                End With
                Tables("应付明细窗体_yfTable").GrandTotal = False
                t = Tables("应付明细窗体_yfTable")
                removeHandler t.grid.Paint, AddressOf Grid_Paint
                Tables("应付明细窗体_yfTable").DataSource  = DataTables("应付交易流水")
                Tables("应付明细窗体_yfTable").SetColVisibleWidth("单号|110|应付金额|100|已付金额|100|交易分类原始值|160|记账日期|90|付款限期|90|经手人原始值|80|说明|200")
                Tables("应付明细窗体_yfTable").Filter = Filter
                Dim dt As DataTable = Tables("应付明细窗体_yfTable").DataTable
                With dt
                     .DataCols("交易分类原始值").Caption = "支出分类"
                     .DataCols("经手人原始值").Caption = "经手人"
                    .BuildHeader()
                End With
                t = Tables("应付明细窗体_yfTable")
                t.Cols("应付金额").GrandTotal = True '指定要合计的列
                t.Cols("已付金额").GrandTotal = True '指定要合计的列
                t.GrandTotal = True '显示合计模式
                t.Grid.Name = t.Name
                AddHandler t.grid.Paint, AddressOf Grid_Paint


[此贴子已经被作者于2020/4/17 11:22:31编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  27楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/17 11:38:00 [只看该作者]

                    If .Value IsNot Nothing Then
                        Filter = Filter & "记账日期>= #" & dt1 & "# And 记账日期 <= #" & dt2 & "# "
                        If Filter > "" Then
                            Filter = Filter & " And "
                        End If
dim drr as datarow = DataTables("支出分类").find("支出目录='" & .Value & "'")
if drr isnot nothing then
                            Dim str As String = DataTables("支出分类").GetComboListString("支出目录","支出分类代码='" & drr("支出分类代码") & "' Or 支出分类代码 Like '" & drr("支出分类代码") & "%'")
                            Filter = Filter & "交易分类 In ('" & str.Replace("|","','") & "')
end if
                    End If

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  28楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/4/17 11:54:00 [只看该作者]

If .Value IsNot Nothing Then
                         Filter = Filter & "记账日期>= #" & dt1 & "# And 记账日期 <= #" & dt2 & "# "
                        If Filter > "" Then
                            Filter = Filter & " And "
                        End If
                        Dim drr As DataRow = DataTables("支出分类").find("支出目录='" & .Value & "'")
                          If drr IsNot Nothing Then
                            Dim str As String = DataTables("支出分类").GetComboListString("支出目录","支出分类代码='" & drr("支出分类代码") & "' Or 支出分类代码 Like '" & drr("支出分类代码") & "%'")
                            Filter = Filter & "收支分类 In ('" & str.Replace("|","','") & "')"
                          End If
                        End If                  
                End With
               
                With e.Form.Controls("sszhComboBox")
                    If .Value IsNot Nothing AndAlso.value<>"所有账户"  Then
                        If Filter > "" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "所属账户 = '" & .Value & "'"
                    End If
                End With
                With e.Form.Controls("jbrComboBox")
                    If .Value IsNot Nothing AndAlso.value<>"所有经办人"  Then
                        If Filter >"" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "经手人 = '" & .Value & "'"
                    End If
                End With
                With e.Form.Controls("bzsmTextBox")
                    If .text <> "" Then
                        If Filter >"" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "备注 Like '%" & .text & "%'"
                    End If
                End With


图片点击可在新窗口打开查看此主题相关图片如下:截图04.jpg
图片点击可在新窗口打开查看



 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  29楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107739 积分:548028 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/17 11:59:00 [只看该作者]

msgbox(filter)

 回到顶部
帅哥哟,离线,有人找我吗?
裴保民
  30楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1989 积分:12631 威望:0 精华:0 注册:2017/4/3 15:01:00
  发帖心情 Post By:2020/4/17 12:27:00 [只看该作者]

选择本年后如果收入分类为空的时,日期怎么不过滤呢?

图片点击可在新窗口打开查看此主题相关图片如下:截图05.jpg
图片点击可在新窗口打开查看

 Case  dalei =e.Form.Controls("bennianRadioButton").Checked
                Dim y As Integer = Date.Today.Year
                Dim dt1 As New Date(y, 1, 1)
                Dim dt2 As New Date(y, 12, 31)
                With e.Form.Controls("srflDropBox")
                    If .Value Is Nothing  Then
                        Tables("收入明细窗体_srTable").GrandTotal = False
                        t = Tables("收入明细窗体_srTable")
                        removeHandler t.grid.Paint, AddressOf Grid_Paint
                        Tables("收入明细窗体_srTable").DataSource  = DataTables("收支交易流水")
                        Tables("收入明细窗体_srTable").Filter = "记账日期>= #" & dt1 & "# And 记账日期 <= #" & dt2 & "# And 交易类型 = '收入'"
                        Tables("收入明细窗体_srTable").SetColVisibleWidth("单号|110|记账日期|90|收支分类原始值|200|收入金额|90|所属账户原始值|150|经手人原始值|90|备注|200")
                        t = Tables("收入明细窗体_srTable")
                        t.Cols("收入金额").GrandTotal = True '指定要合计的列
                        t.GrandTotal = True '显示合计模式
                        t.Grid.Name = t.Name
                        AddHandler t.grid.Paint, AddressOf Grid_Paint
                    End If
                        Dim drr As DataRow = DataTables("收入分类").find("收入目录='" & .Value & "'")
                       If drr IsNot Nothing Then
                            Dim str As String = DataTables("收入分类").GetComboListString("收入目录","收入分类代码='" & drr("收入分类代码") & "' Or 收入分类代码 Like '" & drr("收入分类代码") & "%'")
                            Filter = Filter & "收支分类 In ('" & str.Replace("|","','") & "')"
                       End If
                      If .Value IsNot Nothing Then
                        Filter = Filter & "记账日期>= #" & dt1 & "# And 记账日期 <= #" & dt2 & "#"
                        If Filter > "" Then
                            Filter = Filter & " And "
                        End If
                    End If
                End With
                With e.Form.Controls("sszhComboBox")
                    If .Value IsNot Nothing AndAlso.value<>"所有账户"  Then
                        If Filter > "" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "所属账户 = '" & .Value & "'"
                    End If
                End With
                With e.Form.Controls("jbrComboBox")
                    If .Value IsNot Nothing AndAlso.value<>"所有经办人"  Then
                        If Filter >"" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "经手人 = '" & .Value & "'"
                    End If
                End With
                With e.Form.Controls("bzsmTextBox")
                    If .text <> "" Then
                        If Filter >"" Then
                            Filter = Filter & " And "
                        End If
                        Filter = Filter & "备注 Like '%" & .text & "%'"
                    End If
                End With
                Tables("收入明细窗体_srTable").GrandTotal = False
                t = Tables("收入明细窗体_srTable")
                removeHandler t.grid.Paint, AddressOf Grid_Paint
                Tables("收入明细窗体_srTable").DataSource  = DataTables("收支交易流水")
                Tables("收入明细窗体_srTable").Filter = "[交易类型] = '收入'"
               Tables("收入明细窗体_srTable").SetColVisibleWidth("单号|110|记账日期|90|收支分类原始值|200|收入金额|90|所属账户原始值|150|经手人原始值|90|备注|200")
                Tables("收入明细窗体_srTable").Filter = Filter
                Dim dt As DataTable = Tables("收入明细窗体_srTable").DataTable
                With dt
                        .DataCols("收支分类原始值").Caption = "收入分类"
                        .DataCols("所属账户原始值").Caption = "所属账户"
                        .DataCols("经手人原始值").Caption = "经手人"
                        .DataCols("备注").Caption = "说明"
                    .BuildHeader()
                End With
                t = Tables("收入明细窗体_srTable")
                t.Cols("收入金额").GrandTotal = True '指定要合计的列
                t.GrandTotal = True '显示合计模式
                t.Grid.Name = t.Name
                AddHandler t.grid.Paint, AddressOf Grid_Paint

[此贴子已经被作者于2020/4/17 12:29:23编辑过]

 回到顶部
总数 31 上一页 1 2 3 4 下一页