以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 研究了一早上!修改保存按钮还有些小问题! (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=12008) |
||||
-- 作者:gaoyong30000 -- 发布时间:2011/8/19 11:31:00 -- 研究了一早上!修改保存按钮还有些小问题! 1.例如:我只修改了最后进店日期 点 保存修改 就会跳出没有更改公里数 yes no对话框 如果选择 no 返回修改了当前里程 再点保存修改时 又跳出没有更改进店日期的yes no 对话框
我想 如果出现提示 当前里程未更改 点no 返回 修改里程后 再点保存修改 就会保存这一记录 并往历史进店记录添加一行 最后进店日期同上
2.还有个问题 就是窗口beforeclose事件里有 If Tables("客户档案").Current.DataRow.RowState <> DataRowState.Unchanged Then \'如果当前行已经修改过
但是 这代码貌似没用 如果我随便点开一个数据 修改了公里数后 没点保存 还是可以关闭窗口
3.这个更bug 由于窗口是独立窗口 可以选中后面的数据表(主要是想利用 数据表里自带的查询功能,用模式窗口无法使用查询功能)。如果我在窗口中 更改了数据 但是未保存 此时 我在后面的表里换行了 结果发现更改的数据已保存了。。 这个能否解决? 如果不能解决 看来只有自己设计一个查询窗口镶嵌到 数据录入窗口里了!
[此贴子已经被作者于2011-8-19 11:31:41编辑过]
|
||||
-- 作者:gaoyong30000 -- 发布时间:2011/8/19 11:46:00 -- 还有1个想法 就不开新帖问了
我发现保存修改这个按钮 点击的时候 没感觉! 能否设置下 如果点击保存 且保存成功了 则这个按钮变灰 如果选择了新记录 或者 又更改了数值 则又变回来!
发现用flat 设置 但是flat好丑感觉 设计不到原来按钮的效果啊!
popup保存动作好一点 但是 也不怎么美观 [此贴子已经被作者于2011-8-19 11:53:20编辑过]
|
||||
-- 作者:yangming -- 发布时间:2011/8/19 11:51:00 -- 在保存按钮的最后加上一条:e.Form.Controls("Button2").Enabled = False, 反之:e.Form.Controls("Button2").Enabled = True |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/8/19 11:57:00 -- 1、问题一个一个提,不要总是一大堆,这是你在设计系统,不是人家设计。 2、没有怎么看懂你的逻辑,瞎蒙一下:
Dim r As Row = Tables("客户档案").Current r.Save() [此贴子已经被作者于2011-8-19 12:07:38编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/8/19 12:13:00 --
|
||||
-- 作者:gaoyong30000 -- 发布时间:2011/8/19 12:26:00 -- 代码基本就这样 关键是由于考虑到很多种情况 逻辑太复杂了! 牵涉到很多问题 又怕单单提一个问题
解决后 又出现新问题!! |
||||
-- 作者:gaoyong30000 -- 发布时间:2011/8/19 12:40:00 -- 双击出现窗口点保存后
换行 不修改任何数据 再保存 则会在历史记录里添加数据了。。。 [此贴子已经被作者于2011-8-19 12:40:20编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/8/19 14:18:00 -- 在表的CurrentChanged事件加上代码:
With Forms("客户档案信息")
|
||||
-- 作者:gaoyong30000 -- 发布时间:2011/8/19 15:01:00 -- 我1楼有个问题: 由于窗口是独立窗口 可以选中后面的数据表(主要是想利用 数据表里自带的查询功能,用模式窗口无法使用查询功能)。如果我在窗口中 更改了数据 但是未保存 此时 我在后面的表里换行了 结果发现更改的数据已保存了。。 这个能否解决?
我在你这代码后面加了一段代码
Tables("客户档案").Current.Reject()
用以处理上面的问题,但是出现了 如果我双击窗口 更改了公里数或者日期 然后换行 再换回来 的确记录不会更改了
但是我点保存的时候 会出跳出 这段代码的提示框 yz = MessageBox.Show("最后进店日期 未更改!确定不填写吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
貌似和最后这段代码有关 e.Form.Controls("rq").Text = r("最后进店日期") [此贴子已经被作者于2011-8-19 15:05:19编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/8/19 15:13:00 -- 只能用模式窗口,窗口加上上一行、下一行、第一行、最末行的按钮。
要筛选的时候关闭窗口。 |