Foxtable(狐表)用户栏目专家坐堂 → [求助] 如何动态设置类型为字符型的列的其中一个格为日期型


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

主题:[求助] 如何动态设置类型为字符型的列的其中一个格为日期型

帅哥哟,离线,有人找我吗?
2900819580
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1353 积分:9874 威望:0 精华:0 注册:2015/6/30 8:46:00
[求助] 如何动态设置类型为字符型的列的其中一个格为日期型  发帖心情 Post By:2017/6/5 21:52:00 [只看该作者]

如何动态设置类型为字符型的列的其中 一个格为日期型并且可以使用列属性中的使用内置输入器

如第一列中的类型为字符型 ,如何可以做到第一列

第一行为字符型

第二行为数据型

第三行为日期型 且可以使用  使用内置输入器

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


加好友 发短信
等级:超级版主 帖子:111420 积分:567176 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/6/5 22:32:00 [只看该作者]

做不到。一列只能有一种类型

变通一下,自己做下拉窗口,根据需要在下拉窗口放一个月历选择


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


加好友 发短信
等级:六尾狐 帖子:1353 积分:9874 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2017/6/6 8:49:00 [只看该作者]

SQLTable 

问题点

1、目的,判断上一行的“名称”和“数值”列都不可以为空,否则不可以增加行。


2、CellButtonClick 无响应





过滤条件_Tab条件_DataRowAdded

 

Dim ri As Integer = e.DataTable.DataRows.Count

If ri > 1 Then

MessageBox.Show(e.DataTable.DataRows(1)("名称"))

    e.DataRow("逻辑") = "并且"

Dim dr As DataRow = e.DataTable.DataRows(ri -1)

MessageBox.Show(ri & "|" & dr("名称") & "|" & dr("数值"))

    If dr.IsNull("名称") OrElse dr.IsNull("数值") Then

        MessageBox.Show("条件输入错误:上一行的条件内容不可以为空")

        e.DataRow.Delete

        Return

    End If

End If

    If e.DataTable.DataRows(0)("逻辑") > "" Then e.DataTable.DataRows(0)("逻辑") = Nothing


过滤条件_Tab条件_CellButtonClick

 

If e.Col.Name = "数值" Then

    e.Cancel = True

    Dim Ct As String = DataTables(Vars("DtName")).DataCols(e.Row("名称")).datatype.name

    MessageBox.Show(ct)

    If ct = "Date" Then

        'If DataTables(Vars("DtName")).DataCols(e.Row("名称"))datatype.name = "日期" Then

        MessageBox.Show("日期")

Forms("日期选择").Open()

    End If

End If


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/6 9:46:00 [只看该作者]

1、beforeAddDataRow事件

 

If e.DataTable.Compute("count(_Identify)", "第一列 is null") > 0 Then
    e.cancel = True
End If

 

2、你点击了按钮 ... 了吗? http://www.foxtable.com/webhelp/scr/0642.htm

 


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


加好友 发短信
等级:六尾狐 帖子:1353 积分:9874 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2017/6/6 11:36:00 [只看该作者]

SqlTable 中如何设定“...”
在单元格中显示按钮的方法很简单,只需将该列的列表项目设为“...”或“|...”即可,

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/6 11:42:00 [只看该作者]

可以用代码设置

 

Tables("窗口表").Cols("第一列").ComboList = "|..."


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


加好友 发短信
等级:六尾狐 帖子:1353 积分:9874 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2017/6/6 15:18:00 [只看该作者]

还是SQLTable 


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

Dim tb As Table = Tables(e.Form.Name & "_" & "Tab条件")
Dim r1 As Row = tb.Rows(tb.Rows.Count)
MessageBox.Show(r1("名称") & r1("数值"))     ' 得到 的结果是"名称数值

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/6 15:40:00 [只看该作者]

回复7楼,你要做什么?

 

Dim r1 As Row = tb.Rows(tb.Rows.Count-1)


 回到顶部