Foxtable(狐表)用户栏目专家坐堂 → DropDownOpened和DropDownClosed


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

主题:DropDownOpened和DropDownClosed

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


加好友 发短信
等级:四尾狐 帖子:858 积分:6381 威望:0 精华:0 注册:2017/2/13 9:04:00
DropDownOpened和DropDownClosed  发帖心情 Post By:2018/9/12 9:26:00 [只看该作者]

点单元格下拉窗口还没出来弹出会有下图提示,

选定行关闭下拉窗口后离开单元格也弹出来这个提示:


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

DropDownOpened


Dim txt As String = e.Form.DropDownBox.Text
Dim tbl As Table = Tables("款号录入_Table1")
If txt = "" Then
    tbl.Filter = ""
Else
     txt = "'%" & txt & "%'"
    tbl.Filter = "款号 Like " & txt 
End If
e.Form.DropDownBox.Select()

DropDownClosed

If e.Selected Then '如果选择了值
    Dim tbl As Table = Tables("款号录入_Table1")
    If tbl.Current IsNot Nothing Then
      If e.Form.DropCol.name= "款号" Then
        e.Form.DropDownBox.Value = tbl.Current("款号")
        Tables("销售订单_table2").Current("客款号") = tbl.Current("客款号")
        Tables("销售订单_table2").Current("货品名") = tbl.Current("货品名")
        Tables("销售订单_table2").Current("系列") = tbl.Current("系列")
        Tables("销售订单_table2").Current("尺码组") = tbl.Current("尺码组")
        Tables("销售订单_table2").Current("款号ID") = tbl.Current("款号ID")
      End If

    End If
End If



Validating

Dim drp As WinForm.DropDownBox = e.sender
If drp.DroppedDown Then '如果下拉窗口已经打开 
    drp.CloseDropdown(False) '关闭下拉窗口
End If


KeyDown

Dim drp As WinForm.DropDownBox = e.sender
If drp.DroppedDown Then '如果下拉窗口已经打开
    Dim tbl As Table = Tables("款号录入_Table1")
    If e.KeyCode = Keys.Up Then '如果按下的是上箭头按键
        tbl.Position = tbl.Position - 1 '向上移动一行
        e.Cancel = True
    ElseIf e.KeyCode = Keys.Down Then '如果按下的是下箭头按键
        tbl.Position = tbl.Position + 1 '向下移动一行
        e.Cancel = True
    End If
End If
[此贴子已经被作者于2018/9/12 9:40:56编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 9:58:00 [只看该作者]

应该是表格的currentChanged或者datacolchanged事件有问题导致的错误。

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


加好友 发短信
等级:四尾狐 帖子:858 积分:6381 威望:0 精华:0 注册:2017/2/13 9:04:00
  发帖心情 Post By:2018/9/12 11:07:00 [只看该作者]


currentchanged:
If Forms("销售订单").Opened() '一定要判断用于模拟关联表的窗口是否已经打开

    Dim b As Table = Tables("销售明细尺码数")   
    Dim c As Table = Tables("销售订单_Table4")  
    With Tables("销售订单_Table2")

        If .Current("款号") Is Nothing Then
            c.Filter = "False"
            b.Filter = "False"
        Else
Tables("销售明细尺码数").Cols("尺码信息").Combolist = DataTables("款式尺码").GetComboListString("尺码","[款号] = '" & Tables("销售订单_Table2").current("款号") & "'")
            b.Filter = "订单号 = " & .Current("流水订单号")
            c.Filter = "款号 = " & .Current("款号")
        End If
    End With
End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 11:13:00 [只看该作者]

            b.Filter = "订单号 = " & .Current("流水订单号")
            c.Filter = "款号 = " & .Current("款号")

 

改成

 

            b.Filter = "订单号 = '" & .Current("流水订单号") & "'"
            c.Filter = "款号 = '" & .Current("款号") & "'"

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


加好友 发短信
等级:四尾狐 帖子:858 积分:6381 威望:0 精华:0 注册:2017/2/13 9:04:00
  发帖心情 Post By:2018/9/12 11:47:00 [只看该作者]

还是有这个提示


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/12 11:57:00 [只看该作者]

以下是引用yetle在2018/9/12 11:47:00的发言:
还是有这个提示

 

具体做一个出错的实例发上来测试。

 

不然,自己调试 http://www.foxtable.com/webhelp/scr/1485.htm

 


 回到顶部