以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 空表点删除键错误提示 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=119166) |
-- 作者:hz5692 -- 发布时间:2018/5/18 19:22:00 -- 空表点删除键错误提示 If Tables("Table1").Current Is Nothing Then \'MessageBox.Show("没有选取删除数据行!", "提示", MessageBoxButtons.ok, MessageBoxIcon.Question) 表没有数据,还是会提示运行错误
|
-- 作者:有点蓝 -- 发布时间:2018/5/18 20:35:00 -- 提示什么错误?贴出完整代码,或者上传实例测试 |
-- 作者:hz5692 -- 发布时间:2018/5/18 20:36:00 -- 找到原因了 Dim mq As String = Tables("窗口1_Table1").Current("单据") Dim pm As String = Tables("窗口1_Table1").Current("顺序") Dim Res As DialogResult If Tables("窗口1_Table1").Current Is Nothing Then MessageBox.Show("没有选取删除数据行!", "提示", MessageBoxButtons.ok, MessageBoxIcon.Question) Else Res = MessageBox.Show("是否删除【顺序:"& pm &" 单据:"& mq &"】?", "提示", MessageBoxButtons.yesno, MessageBoxIcon.Question) If Res = DialogResult.yes Then Tables("窗口1_Table1").Current.Delete DataTables("窗口1_Table1").Save() End If End If 会出运行错误 If Tables("窗口1_Table1").Current Is Nothing Then MessageBox.Show("没有选取删除数据行!", "提示", MessageBoxButtons.ok, MessageBoxIcon.Question) Else Dim mq As String = Tables("窗口1_Table1").Current("单据") Dim pm As String = Tables("窗口1_Table1").Current("顺序") Dim Res As DialogResult Res = MessageBox.Show("是否删除【顺序:"& pm &" 单据:"& mq &"】?", "提示", MessageBoxButtons.yesno, MessageBoxIcon.Question) If Res = DialogResult.yes Then Tables("窗口1_Table1").Current.Delete DataTables("窗口1_Table1").Save() End If End If 把定义变量放IF里面就不会出错 找到原因了 Dim mq As String = Tables("窗口1_Table1").Current("单据") Dim pm As String = Tables("窗口1_Table1").Current("顺序") Dim Res As DialogResult If Tables("窗口1_Table1").Current Is Nothing Then MessageBox.Show("没有选取删除数据行!", "提示", MessageBoxButtons.ok, MessageBoxIcon.Question) Else Res = MessageBox.Show("是否删除【顺序:"& pm &" 单据:"& mq &"】?", "提示", MessageBoxButtons.yesno, MessageBoxIcon.Question) If Res = DialogResult.yes Then Tables("窗口1_Table1").Current.Delete DataTables("窗口1_Table1").Save() End If End If 表没有数据会出运行错误 If Tables("窗口1_Table1").Current Is Nothing Then MessageBox.Show("没有选取删除数据行!", "提示", MessageBoxButtons.ok, MessageBoxIcon.Question) Else Dim mq As String = Tables("窗口1_Table1").Current("单据") Dim pm As String = Tables("窗口1_Table1").Current("顺序") Dim Res As DialogResult Res = MessageBox.Show("是否删除【顺序:"& pm &" 单据:"& mq &"】?", "提示", MessageBoxButtons.yesno, MessageBoxIcon.Question) If Res = DialogResult.yes Then Tables("窗口1_Table1").Current.Delete DataTables("窗口1_Table1").Save() End If End If 把定义变量放IF里面就不会出错
|
-- 作者:cd_tdh -- 发布时间:2018/5/19 6:20:00 -- 我觉得严谨的写法是先判断有没数据(是否是空表),是空表就不在执行后面的一切代码。 |