Foxtable(狐表)用户栏目专家坐堂 → 窗口事件命令问题


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

主题:窗口事件命令问题

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


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
窗口事件命令问题  发帖心情 Post By:2015/7/17 18:07:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20150717180235.png
图片点击可在新窗口打开查看
上图为一格模式窗口,如果想选择好报名课程和选定课时数 课程学费的文本框中知道现实学费金额。

 

是要在窗口的事件命令编辑吗?还是在某一控件?表达式的代入格式是怎样的??


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


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/17 18:10:00 [只看该作者]

窗口绑定的表中  如果是原有数据 我直接就增加表达式列 就是了

如果是先增加学员数据,也一样吗?还是要在窗口中编辑?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/7/17 18:15:00 [只看该作者]


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


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/17 18:22:00 [只看该作者]

编辑窗口事件就可以了吗?还是要在绑定表编辑?


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


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/17 19:05:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:51.png
图片点击可在新窗口打开查看
是不是直接可以编辑表的全局事件

如果课时数发生变化  学费金额= 课程内容的单价X课时数 ?


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2015/7/18 10:37:00 [只看该作者]

 既然是绑定到列了,那么这种计算和窗口无关,直接编写表事件即可。

这种查找符合条件的行,提取改行某列数据,进行计算或者赋值,我都帮你写过多次了。

花两个周末学一下置顶视频教程的三章:《编程基础》《基本类型》《事件编程》,,会让你的编程水平大大提高,效率提升百倍。

否则始终在同样的问题中转圈圈。


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


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/18 11:10:00 [只看该作者]

If e.DataCol.Name = "课程" Then
    If e.NewValue Is Nothing Then
        e.DataRow("课时费") = Nothing
    Else
        Dim dr  As  DataRow
        dr =  DataTables("课类分类表").Find("科目 = '" & ("课程") & "'")
        If dr IsNot Nothing Then  '
            e.DataRow("课时费") = dr("课时费")
        End  If
        dr("学费余额") = dr("课程") * dr("剩余课时")
    End  If
      
End If

 

这样吗?

[此贴子已经被作者于2015/7/18 11:12:24编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2015/7/18 11:25:00 [只看该作者]

呵呵, 你的业务逻辑只有你清楚的哦,我们只能从代码角度分析。

 

下面的代码有一些问题:

 

 dr =  DataTables("课类分类表").Find("科目 = '" & ("课程") & "'")

 

应该:

 

 dr =  DataTables("课类分类表").Find("科目 = '" & e.DataRow("课程") & "'")


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


加好友 发短信
等级:二尾狐 帖子:514 积分:3247 威望:0 精华:0 注册:2015/4/22 16:20:00
  发帖心情 Post By:2015/7/18 11:49:00 [只看该作者]

前面根据课程自动代入课时费OK了,后满根据课时费 X 课时数  代入学费余额这个 是我命令写错了吧?

If e.DataCol.Name = "课程" Then
    If e.NewValue Is Nothing Then
        e.DataRow("课时费") = Nothing
    Else
        Dim dr  As  DataRow
         dr =  DataTables("课类分类表").Find("科目 = '" & e.DataRow("课程") & "'")
        If dr IsNot Nothing Then
            e.DataRow("课时费") = dr("课时费")
        End  If
     
  If e.DataCol.Name = "剩余课时" Then
            e.DataRow("学费余额") = ("课时费") * ("剩余课时")
        End If
    End  If
   
End If

 


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


加好友 发短信
等级:四尾狐 帖子:998 积分:6656 威望:0 精华:0 注册:2014/10/20 11:06:00
  发帖心情 Post By:2015/7/18 11:54:00 [只看该作者]

不会举一反三?
If e.DataCol.Name = "剩余课时" Then
            e.DataRow("学费余额") = dr("课时费") * dr("剩余课时")
End If
[此贴子已经被作者于2015/7/18 11:57:29编辑过]

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