Foxtable(狐表)用户栏目专家坐堂 → [求助]表事件Click和DoubleClick都有代码时DoubleClick中打开窗口的代码不执行


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

主题:[求助]表事件Click和DoubleClick都有代码时DoubleClick中打开窗口的代码不执行

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


加好友 发短信
等级:四尾狐 帖子:820 积分:5641 威望:0 精华:1 注册:2015/11/28 14:00:00
[求助]表事件Click和DoubleClick都有代码时DoubleClick中打开窗口的代码不执行  发帖心情 Post By:2017/5/2 17:05:00 [只看该作者]

如题,表事件Click和DoubleClick都有代码时,DoubleClick中打开窗口的代码不执行,不知道是BUG,还是怎么会事。版本已更到最新。

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


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

我测试了一下,没问题的,可以触发两个事件。

 

具体问题做个例子上来看看。


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


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

 会先触发click事件,再触发doubleclick事件的。写代码的时候,要避免这个东西。

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


加好友 发短信
等级:四尾狐 帖子:820 积分:5641 威望:0 精华:1 注册:2015/11/28 14:00:00
  发帖心情 Post By:2017/5/2 17:24:00 [只看该作者]

以下是引用有点色在2017/5/2 17:14:00的发言:
 会先触发click事件,再触发doubleclick事件的。写代码的时候,要避免这个东西。

click把doubleclick中用到的列去排除是没有问题的。但如果不排除,用的是整行,doubleclick中的代码总不起作用。


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


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

 先触发的的是click事件,如果你click事件写的代码是弹出一个提示,或者模式窗口,你自然不会再触发doubleclick事件。

 

 


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


加好友 发短信
等级:四尾狐 帖子:820 积分:5641 威望:0 精华:1 注册:2015/11/28 14:00:00
  发帖心情 Post By:2017/5/3 8:10:00 [只看该作者]

以下是引用有点色在2017/5/2 17:44:00的发言:

 先触发的的是click事件,如果你click事件写的代码是弹出一个提示,或者模式窗口,你自然不会再触发doubleclick事件。

 

 

click没有弹出,代码如下

If e.Row("品名料号") <> "" Then
    Dim dt As Date =  Date.Now.AddMonths(-3)
    DataTables("产品出入库信息").LoadFilter = "产品料号 = '"& e.Row("品名料号") &"' And 日期 >= '" & dt & "'"
    DataTables("产品出入库信息").Load
    Dim g As New CrossTableBuilder("出入库统计", DataTables("产品出入库信息"))
    g.HGroups.AddDef("仓库名称")
    g.HGroups.AddDef("日期", DateGroupEnum.None)
    g.HGroups.AddDef("库存结余")
    g.HGroups.AddDef("单号")
    g.VGroups.AddDef("出入库类型")
    g.VGroups.AddDef("类型")
    g.Totals.AddDef("数量", "数(重)量")
    g.VerticalTotal = True
    DataTables("产品月季总出货量").LoadFilter = "产品料号 = '" & e.Row("品名料号") & "' and 仓库名称 = '" & e.Row("仓库名称") & "' And 年 >= " & Date.Today.Year - 2
    DataTables("产品月季总出货量").Load
    Tables("产品月季总出货量").Sort = "年,月(季)"
    If Forms("单独库存查询").Opened Then
        Tables("单独库存查询_Table2").DataSource = g.BuildDataSource()
        Dim ct1 As WinForm.Chart = Forms("单独库存查询").Controls("Chart1")
        Dim ct2 As WinForm.Chart = Forms("单独库存查询").Controls("Chart2")
        Dim Sr1 As WinForm.ChartSeries
        Dim Sr2 As WinForm.ChartSeries
        Dim tbl As DataTable = DataTables("产品月季总出货量")
        Dim lsty As new List(Of String)
        Dim lstyn As new List (of Integer)
        Dim lstyy As new List (of Integer)
        Dim lstj As new  List(of String)
        Dim lstjn As new  List (of Integer)
        Dim lstjy As new List (of Integer)
        Dim yj As String
        Dim i As Integer
        For i = 0 To Tables("产品月季总出货量").Rows.Count - 1
            Dim n As String = CStr(Tables("产品月季总出货量").Rows(i)("年"))
            Dim y As String = CStr(Tables("产品月季总出货量").Rows(i)("月(季)"))
            yj =  n & y
            If Tables("产品月季总出货量").Rows(i)("月季份") = "月" Then
                lsty.Add(yj)
                lstyn.Add(Tables("产品月季总出货量").Rows(i)("年"))
                lstyy.add(Tables("产品月季总出货量").Rows(i)("月(季)"))
            Else
                lstj.Add(yj)
                lstjn.add(Tables("产品月季总出货量").Rows(i)("年"))
                lstjy.add(Tables("产品月季总出货量").Rows(i)("月(季)"))
            End If
            yj = ""
        Next
        ct1.ChartType = ChartTypeEnum.Bar
        ct1.SeriesList.Clear() '清除图表原来的图系
        Ct1.AxisY.ClearValueLabel
        Ct1.AxisX.ClearValueLabel
        Sr1 = ct1.SeriesList.Add() '增加一个图系
        Sr1.Length = lsty.Count '设置图系的长度
        For h As Integer = 0 To lsty.Count - 1 '指定每个数据点的位置
            Sr1.X(h) = h '指定水平坐标
            sr1.Y(h) = tbl.Compute("Sum(总出货量)","[月季份] = '月' and [年] = " & lstyn(h) & " and [月(季)] = " & lstyy(h))'指定垂直坐标
            Ct1.AxisX.SetValueLabel(h, lsty(h)) '指定字符表示
        Next
        Ct1.AxisX.AnnoWithLabels = True '启用字符标示
        sr1.DataLabelText = "{#YVAL}"
        'Ct1.AxisX.AnnoRotation = -45
        ct2.ChartType = ChartTypeEnum.Bar
        ct2.SeriesList.Clear() '清除图表原来的图系
        Ct2.AxisY.ClearValueLabel
        ct2.AxisX.ClearValueLabel
        Sr2 = ct2.SeriesList.Add() '增加一个图系
        Sr2.Length = lstj.Count '设置图系的长度
        For j As Integer = 0 To lstj.Count - 1 '指定每个数据点的位置
            Sr2.X(j) = j '指定水平坐标
            sr2.Y(j) = tbl.Compute("Sum(总出货量)","[月季份] = '季' and [年] = " & lstjn(j) & " and [月(季)] = " & lstjy(j))'指定垂直坐标
            Ct2.AxisX.SetValueLabel(j, lstj(j)) '指定字符表示
        Next
        Ct2.AxisX.AnnoWithLabels = True '启用字符标示
        sr2.DataLabelText = "{#YVAL}"
        'Ct2.AxisX.AnnoRotation = -45
        Dim gb2 As WinForm.GroupBox = Forms("单独库存查询").Controls("GroupBox2")
        gb2.Text = e.Row("品名料号") & "产品近三个月出入库详情"
        Dim gb3 As WinForm.GroupBox = Forms("单独库存查询").Controls("GroupBox3")
        gb3.Text = e.Row("品名料号") & "近两年季用量走势图"
        Dim gb4 As WinForm.GroupBox = Forms("单独库存查询").Controls("GroupBox4")
        gb4.Text = e.Row("品名料号") & "近两年月用量走势图"
    End If
End If


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


加好友 发短信
等级:四尾狐 帖子:820 积分:5641 威望:0 精华:1 注册:2015/11/28 14:00:00
  发帖心情 Post By:2017/5/3 8:11:00 [只看该作者]

doubleclick里的代码是弹出窗口,现在窗口不弹出。

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


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

 代码看着没有问题,请做具体实例发上来看看。

 回到顶部