以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  窗口之前引用错误  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=69874)

--  作者:dj68301367
--  发布时间:2015/6/12 9:47:00
--  窗口之前引用错误

 

 订单录入_Tab订单_DoubleClick 

\'messagebox.show(e.Col.name)

If e.Col.name="成品单价" Then

    mbtname=e.Form.Controls("T成品代码").value

    Forms("产品单价管理").open()

   

Else

    Forms("产品查询").open()

 

    Tables("订单录入_Tab订单").Current("成品代码")=mbtname

End If

 

 

产品查询_But选择_Click

 

mbtname=Tables("产品查询_Table1").Current("成品代码")

 

Forms("产品查询").Close

 

 

错误如下,代码见上

 

 
此主题相关图片如下:震荡.jpg
按此在新窗口浏览图片

有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。

************** 异常文本 **************
System.NullReferenceException: 未将对象引用设置到对象的实例。
   在 ??.?.??(Char key, Point ptMouse, Boolean dblClick)
   在 ??.?.StartEditing(Int32 row, Int32 col, Char key, Boolean force, Point ptMouse, Boolean dblClick)
   在 C1.Win.C1FlexGrid.C1FlexGridBase.StartEditing(Int32 row, Int32 col, Point ptMouse, Boolean dblClick)
   在 C1.Win.C1FlexGrid.C1FlexGrid.StartEditing(Int32 row, Int32 col, Point ptMouse, Boolean dblClick)
   在 ??.??.?(Boolean dblClick)
   在 ??.??.?(MouseEventArgs e)
   在 C1.Win.C1FlexGrid.C1FlexGridBase.OnDoubleClick(EventArgs e)
   在 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   在 System.Windows.Forms.Control.WndProc(Message& m)
   在 C1.Win.C1FlexGrid.Util.BaseControls.ScrollableControl.WndProc(Message& m)
   在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 已加载的程序集 **************
mscorlib
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.5485 (Win7SP1GDR.050727-5400)
    基本代码: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
Foxtable
    程序集版本: 2014.11.11.1
    Win32 版本: 2014.11.11.1
    基本代码: file:///C:/foxtable/开发版/foxtable.exe
----------------------------------------
Foxtable.Lib
    程序集版本: 2014.10.23.1
    Win32 版本: 2014.10.23.1
    基本代码: file:///C:/foxtable/开发版/Foxtable.Lib.DLL
----------------------------------------
System.Windows.Forms
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.5491 (Win7SP1GDR.050727-5400)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.5485 (Win7SP1GDR.050727-5400)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.5491 (Win7SP1GDR.050727-5400)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Microsoft.VisualBasic
    程序集版本: 8.0.0.0
    Win32 版本: 8.0.50727.5483 (Win7SP1GDR.050727-5400)
    基本代码: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/8.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System.Data
    程序集版本: 2.0.0.0
    Win32 版本: 2.0.50727.5483 (Win7SP1GDR.050727-5400)
    基本代码: file:///C:/Windows/assembly/GAC_32/System.Data/2.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Xml
    程序集版本: 2.0.0.0



--  作者:大红袍
--  发布时间:2015/6/12 9:49:00
--  

mbtname=e.Form.Controls("T成品代码").value
Forms("产品单价管理").open()

这样肯定不行,没打开,不可能直接用。要不你把代码写到窗口afterLoad事件去

 

mbtname=e.Form.Controls("T成品代码").value


--  作者:dj68301367
--  发布时间:2015/6/12 9:59:00
--  

大红袍兄,上面那段没有问题,是后面的那段出问题了。

产品查询窗口可以正常打开,就是在选择产品型号之后的, But选择_Click  事件,产品查询窗口关闭之后

产品录入窗口中|Table中读取mbtname变量时出错。

 

    Forms("产品查询").open()

 

    Tables("订单录入_Tab订单").Current("成品代码")=mbtname

End If

 

 

产品查询_But选择_Click

 

mbtname=Tables("产品查询_Table1").Current("成品代码")

 

Forms("产品查询").Close

 


--  作者:大红袍
--  发布时间:2015/6/12 10:11:00
--  

 呃,代码没什么问题,加入msgbox弹出mbtname看看

 

 msgbox(mbtname)


--  作者:dj68301367
--  发布时间:2015/6/12 10:51:00
--  

在那里加

 


--  作者:dj68301367
--  发布时间:2015/6/12 10:56:00
--  
 Forms("产品查询").open()

 msgbox(mbtname)

    Tables("订单录入_Tab订单").Current("成品代码")=mbtname

 

End If

 

 

产品查询_But选择_Click

 

mbtname=Tables("产品查询_Table1").Current("成品代码")

 msgbox(mbtname)

Forms("产品查询").Close

msgbox(mbtname)

 

 

以上三个地方都加了,都能正确显示,

但错误还 出现


--  作者:dj68301367
--  发布时间:2015/6/12 11:16:00
--  
顶一下,
--  作者:大红袍
--  发布时间:2015/6/12 11:29:00
--  
 那弹出什么?上传例子测试。
--  作者:dj68301367
--  发布时间:2015/6/12 13:44:00
--  


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

调试出现如图所示。

 

奇怪的是,出现错误提示后,点继续之后,就可以正常使用了。


--  作者:大红袍
--  发布时间:2015/6/12 14:07:00
--  
  你看看是不是你的datacolchanged事件有问题,你上面的代码,应该是没什么问题的。