以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  请教老师  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=179111)

--  作者:fvcfox
--  发布时间:2022/8/8 11:42:00
--  请教老师
If e.Table.GridTreeVisible Then
    If e.Table.Current("扩展名") = "文件夹" Then
        MessageBox.Show(21312312)
        e.ContextMenu = ContextMenus("主表菜单j") \'显示快捷菜单"菜单A"
    Else
        e.ContextMenu = ContextMenus("主表菜单w") \'显示快捷菜单"菜单B"
    End If
End If

图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20220808114038.png
图片点击可在新窗口打开查看
明明该行的扩展名是“文件夹”不知为什么不执行红色代码,快捷键还是执行 “主表菜单w“

[此贴子已经被作者于2022/8/8 11:42:43编辑过]

--  作者:有点蓝
--  发布时间:2022/8/8 13:54:00
--  
代码在什么事件的?
--  作者:有点蓝
--  发布时间:2022/8/8 13:55:00
--  
调试

msgbox(e.Table.GridTreeVisible)
If e.Table.GridTreeVisible Then
msgbox(e.Table.Current("扩展名"))
msgbox(e.Table.Current("扩展名") = "文件夹")
    If e.Table.Current("扩展名") = "文件夹" Then
        MessageBox.Show(21312312)

--  作者:fvcfox
--  发布时间:2022/8/8 14:07:00
--  

在BeforeShowContextMenu事件

提示窗

第一个box:trur

第二个box:文件夹

第三个box:false

没执行到 MessageBox.Show(21312312)




[此贴子已经被作者于2022/8/8 14:08:20编辑过]

--  作者:有点蓝
--  发布时间:2022/8/8 14:09:00
--  
调试

dim s as string = e.Table.Current("扩展名")
msgbox(s.length)
msgbox("|" & s & "|")

--  作者:fvcfox
--  发布时间:2022/8/8 14:25:00
--  
提示是长度是10,我如下增加行代码怎么会自动加了空格呢
Dim tb As Table = Tables("文件管理_Table1")
Dim r As Row = tb.AddNew 
r.DataRow.Save 
r("did") = r("_Identify")
r("childid") = r("_Identify")
r ("扩展名") = "文件夹"
r ("单位") = Tables("one").rows(0)("单位")
r ("操作员") = Tables("one").rows(0)("操作员")
[此贴子已经被作者于2022/8/8 14:34:05编辑过]

--  作者:有点蓝
--  发布时间:2022/8/8 14:40:00
--  
数据库里列类型不对把?这个表不是使用Foxtable创建的?

不要使用char这种类型的列,改为nvarchar

--  作者:fvcfox
--  发布时间:2022/8/8 14:48:00
--  
哦,原来问题在这,找了许久,谢谢