Foxtable(狐表)用户栏目专家坐堂 → 高级筛选细节实现


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

主题:高级筛选细节实现

美女呀,离线,留言给我吧!
susu312
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
高级筛选细节实现  发帖心情 Post By:2018/8/11 10:24:00 [只看该作者]


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

 

老师, 高级筛选里面,一选列,左边的连接和右边的等于就当填好了,这个是怎么实现的呀?

当列为时间类型时,进入内容填写,就会出现时间填写的格式,这个是怎么实现的呀?


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


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

datacolchanged事件给其他列赋值不就行了


 回到顶部
美女呀,离线,留言给我吧!
susu312
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
  发帖心情 Post By:2018/8/11 15:36:00 [只看该作者]

以下是引用有点蓝在2018/8/11 10:48:00的发言:
datacolchanged事件给其他列赋值不就行了

老师,我参考上面的例子,

给逻辑和操作符列在列属性里面设置了数据字典,在窗口的afterload事件中写:

Tables("筛选").Cols("逻辑").DataCol.DefaultValue="and "
Tables("筛选").Cols("操作符").DataCol.DefaultValue=" = "

报错,为啥呀?


 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106129 积分:539756 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/11 15:45:00 [只看该作者]


 回到顶部
美女呀,离线,留言给我吧!
susu312
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
  发帖心情 Post By:2018/8/11 16:04:00 [只看该作者]


Dim nums1() As String={"sex","age","birth", _
                     "edu","workdate","politicalStatus", _
                     "retiredPost","title","leaOrRetire", _
                    "retireTime","proTecPost","partyTime", _
                     "organName","partyStanding","retiredDep"}
Dim nums2()  As String={"性别","年龄","出生年月", _
                     "学历","参加工作日期","政治面貌", _
                     "离退休职务","享受待遇","状态", _
                    "离退休时间","专业技术职务","入党时间", _
                     "单位","党龄","部门"}


If e.DataCol.name = "字段" Then
    Dim t As Table = Tables("person")
    Dim Index As Integer=Array.Indexof(nums2,e.newvalue)
    If t.cols.contains(nums1(Index)) Then
      
        e.DataRow("操作符") = "等于"
        e.DataRow("逻辑") = "并且"
        If t.cols(nums1(Index)).IsDate   Then
            e.DataCol("值").SetDateTimeFormat(DateTimeFormatEnum.Date)
        End If
    End If
End If

 

老师,这个是在表的datachanged事件中写的,

其实红色部分, 我希望'  t.grid.cols("glValue").Editor = new windows.forms.DateTimePicker 就是那个框直接是日期输入框,但是我不会实现

 

人家的参考例子是SQLTABLE,我对这个不熟悉,我就用了内部表


 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106129 积分:539756 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/11 16:06:00 [只看该作者]

内部表一样的用法

tbl.grid.cols("glValue").Editor = new windows.forms.DateTimePicker

 回到顶部
美女呀,离线,留言给我吧!
susu312
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
  发帖心情 Post By:2018/8/11 16:23:00 [只看该作者]

以下是引用有点蓝在2018/8/11 16:06:00的发言:
内部表一样的用法

tbl.grid.cols("glValue").Editor = new windows.forms.DateTimePicker

Dim nums1() As String={"sex","age","birth", _
                     "edu","workdate","politicalStatus", _
                     "retiredPost","title","leaOrRetire", _
                    "retireTime","proTecPost","partyTime", _
                     "organName","partyStanding","retiredDep"}
Dim nums2()  As String={"性别","年龄","出生年月", _
                     "学历","参加工作日期","政治面貌", _
                     "离退休职务","享受待遇","状态", _
                    "离退休时间","专业技术职务","入党时间", _
                     "单位","党龄","部门"}


If e.DataCol.name = "字段" Then
    Dim t As Table = Tables("person")
    Dim Index As Integer=Array.Indexof(nums2,e.newvalue)
    If t.cols.contains(nums1(Index)) Then
        e.DataRow("操作符") = "等于"
        e.DataRow("逻辑") = "并且"
        If t.cols(nums1(Index)).IsDate Then
             MessageBox.Show("xxxx")
             Tables("筛选").grid.cols("值").Editor = new windows.forms.DateTimePicker
        Else
             MessageBox.Show("yyyyyy")

             Tables("筛选").grid.cols("值").Editor = new windows.forms.TextBox
        End If
    End If
End If

 

 

老师,我这么写并没有出现 实现 new windows.forms.DateTimePicker  这个效果,它识别了是日期类型,但是不能日期输入的控件,

 

请老师帮忙看看


 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106129 积分:539756 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/11 16:26:00 [只看该作者]

请上传实例说明

 回到顶部
美女呀,离线,留言给我吧!
susu312
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:997 积分:6752 威望:0 精华:0 注册:2018/6/8 16:17:00
  发帖心情 Post By:2018/8/11 16:27:00 [只看该作者]

以下是引用有点蓝在2018/8/11 16:06:00的发言:
内部表一样的用法

tbl.grid.cols("glValue").Editor = new windows.forms.DateTimePicker

其实,只是把tables("筛选")当前行的当前列的输入框变成日期输入框,不知这个咋实现了,请老师指点一下?

 


 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106129 积分:539756 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/11 16:28:00 [只看该作者]

请上传实例说明

 回到顶部
总数 20 1 2 下一页