已经从数据库中查询到数据,并在mshflexgrid中显示出来,我想设计一个修改界面,点击修改按键时弹出一个可以修改的界面,修改鼠标选定的那行数据,但是程序总是报实时错误:要求对象
Private Sub Command2_Click()
Frmmodify.show
End SubPrivate Sub Form_Load()
x = MSHFlexGrid1.Row
Text1.Text = MSHFlexGrid1.TextMatrix(x,0)  '要求对象
Text2.Text = MSHFlexGrid1.TextMatrix(x,1)
Text3.Text = MSHFlexGrid1.TextMatrix(x,2)
......
End Sub

解决方案 »

  1.   

    在FORM_load的时候控件初始化和数据加载还没完成.
    你可以尝试将这一部分代码单独写成一个SUB,然后单独调用.你也可以试试在FORM_LOAD的时候写TEXT1.SETFOCUS,看看会怎么样
      

  2.   

    假如MSHFlexGrid1是在Form1窗体上查询获得数据,那么Frmmodify的Form_Load代码中需指定MSHFlexGrid1所属窗体名。
    Private Sub Form_Load() 
    x = MSHFlexGrid1.Row 
    Text1.Text = Form1.MSHFlexGrid1.TextMatrix(x,0)  '要求对象 
    Text2.Text = Form1.MSHFlexGrid1.TextMatrix(x,1) 
    Text3.Text = Form1.MSHFlexGrid1.TextMatrix(x,2) 
    ...... 
    End Sub 
      

  3.   

    private sub MSHFlexGrid1_BeforeEdit()
    end sub
    控件支持当前窗口编辑.如果绑定到TextBox再编辑会有bug,比如方向键支持的显示会有bug