Foxtable(狐表)用户栏目专家坐堂 → 自动增加行未实现


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

主题:自动增加行未实现

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


加好友 发短信
等级:二尾狐 帖子:530 积分:4613 威望:0 精华:0 注册:2018/3/24 18:04:00
自动增加行未实现  发帖心情 Post By:2019/8/29 13:47:00 [只看该作者]

在最后一行的最后一个单元格按回车键时,自动增加一行,我的在窗口的afterload中写了如下代码:
Dim t As Table = Tables("专piao录入_Table1") '这个表设置的是SQLTable表
t.AutoAddNew = True



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


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/8/29 14:34:00 [只看该作者]

没有问题的。如果之后使用fill或者DataSource设置数据,那么需要设置后重新调用1楼代码

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


加好友 发短信
等级:二尾狐 帖子:530 积分:4613 威望:0 精华:0 注册:2018/3/24 18:04:00
回复:(有点蓝)没有问题的。如果之后使用fill或者Da...  发帖心情 Post By:2019/8/30 9:32:00 [只看该作者]

我即没有fill也没有DataSource,我重新做了一个简单的日子,测试是没有问题的,但在我的系统里面就是不行,我把整个afterload中的代码贴给您麻烦帮我看下:并且我把SQLTable表事件的代码也全部屏蔽掉了
Dim dt As DataTable = DataTables("专piao录入_Table1")
Dim str As String = Forms("申请单录入").Controls("tb申请单号").value
dt.loadFilter = "申请单号 = '"& str & "'"
dt.load()

Dim t As Table = Tables("专piao录入_Table1")
t.AutoAddNew = True
t.Grid.Styles.EmptyArea.backcolor = color.white '设置表格内空白区域的背景色为 白色
t.Grid.Styles.EmptyArea.Border.Style = 0   '去表格边框

t.cols("不含税金额").GrandTotal = True
t.Cols("税额").GrandTotal = True
t.cols("fa piao金额").GrandTotal = True
t.GrandTotal = True '显示合计模式

If t.Rows.Count = 0 Then
    e.Form.Controls("Button1").PerformClick '窗口打开模拟按下新增按钮
End If

For Each dc As DataCol In DataTables("专piao录入_table1").DataCols
    If dc.IsNumeric Then
        dc.Decimals = 2
        dc.SetFormat("0.00")
    End If
Next

Dim cmd As New SQLCommand
cmd.C
Dim dt1 As DataTable
cmd.CommandText = "SELECT DISTINCT 开piao单位简称 Fro m {进项fa piao}"
dt1 = cmd.ExecuteReader()
t.Cols("开piao单位简称").ComboList= dt1.GetComboListString("开piao单位简称")

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


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

把这句代码放到最后试试,就是这个事件其它代码的最后

……
cmd.CommandText = "SELECT DISTINCT 开piao单位简称 Fro m {进项fa piao}"
dt1 = cmd.ExecuteReader()
t.Cols("开piao单位简称").ComboList= dt1.GetComboListString("开piao单位简称")
t.AutoAddNew = True

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


加好友 发短信
等级:二尾狐 帖子:530 积分:4613 威望:0 精华:0 注册:2018/3/24 18:04:00
回复:(有点蓝)把这句代码放到最后试试,就是这个事...  发帖心情 Post By:2019/8/30 10:25:00 [只看该作者]

把 t.AutoAddNew = True 放在最后了还是不行,我把窗口表的设置也给你看下,红色框框的显示列是可以勾选的,但是在这个里面没有显示勾选的框框,只能手动输入,和这个会有关系吗?

图片点击可在新窗口打开查看此主题相关图片如下:进项.png
图片点击可在新窗口打开查看
我在很多类似于这种SQLtable表的显示列这一块都有这个问题,至今未解决,同样的这个自动增加行也是的

[此贴子已经被作者于2019/8/30 10:26:55编辑过]

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


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

access数据库?是不是有人使用access打开了这个数据库。数据库处于打开状态,显示列是无法使用的。

做个实例发上来看看

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


加好友 发短信
等级:二尾狐 帖子:530 积分:4613 威望:0 精华:0 注册:2018/3/24 18:04:00
回复:(有点蓝)access数据库?是不是有人使用access...  发帖心情 Post By:2019/9/3 10:38:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试.zip

老师,我做了一个测试,有三个问题
1.项目带不开了,不知道啥原因,要按住CTRL
2.SQLtable的属性设置里面有个显示列可以显示所有列供选择的,怎么不显示这个了
2.自动增加行设置不起作用
见图

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


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


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/9/3 11:07:00 [只看该作者]

1、数据库缺表引起的,比如user表
2、我测试没有问题,应该是使用access打开数据库了吧,关闭即可
3、这个是合计行的问题,取消合计行,或者自己写代码处理一下

KeyDown事件


If e.keycode = Keys.D AndAlso e.control = True Then

    For i As Integer = e.Table.topposition + 1 To e.Table.bottomposition

        e.Table.rows(i)(e.Table.colsel) = e.Table.rows(i-1)(e.Table.colsel)

    Next

    e.cancel = True

ElseIf e.keycode = 40 AndAlso e.Table.Rowsel = e.Table.Rows.count - 1 AndAlso e.Table.colsel = 0

    e.cancel = True

    e.Table.addnew

    e.Table.Select(e.Table.Rows.count - 1,0)

End If


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


加好友 发短信
等级:二尾狐 帖子:530 积分:4613 威望:0 精华:0 注册:2018/3/24 18:04:00
回复:(有点蓝)1、数据库缺表引起的,比如user表2、...  发帖心情 Post By:2019/9/4 14:35:00 [只看该作者]

2、我测试没有问题,应该是使用access打开数据库了吧,关闭即可  →老师我并没有使用access打开数据库喔,我的office里面就没有选择安装access,见下图

此主题相关图片如下:office.png
按此在新窗口浏览图片

3、这个是合计行的问题,取消合计行,或者自己写代码处理一下  →合计行我还是想用的,不想取消;如果我在最后一行输入数字,在编辑状态下按回车键是不会新增行的,除非不在编辑状态下按回车键下面的这段代码是可以新增行的,我是想在编辑状态下按下回车键以后就能新增行喔

KeyDown事件


If e.keycode = Keys.D AndAlso e.control = True Then

    For i As Integer = e.Table.topposition + 1 To e.Table.bottomposition

        e.Table.rows(i)(e.Table.colsel) = e.Table.rows(i-1)(e.Table.colsel)

    Next

    e.cancel = True

ElseIf e.keycode = 40 AndAlso e.Table.Rowsel = e.Table.Rows.count - 1 AndAlso e.Table.colsel = 0

    e.cancel = True

    e.Table.addnew

    e.Table.Select(e.Table.Rows.count - 1,0)

End If


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


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

KeyDownEdit事件自己写类似的代码

 回到顶部