我想将text中的数据录入到MSHFLEXGRID中去。点击一下COMMAND录入一行。
请问应该怎么办。
我写了以下程序:
private function luru(n as double)
  MSHFlexGrid1.TextMatrix(n, 0) = n
  MSHFlexGrid1.TextMatrix(n, 1) = Trim(Text1.Text)
  MSHFlexGrid1.TextMatrix(n, 2) = Trim(Text2.Text)
  MSHFlexGrid1.TextMatrix(n, 3) = Trim(Text7.Text)
  MSHFlexGrid1.TextMatrix(n, 4) = Trim(Text3.Text)
  MSHFlexGrid1.TextMatrix(n, 5) = Trim(Combo1.Text)
  MSHFlexGrid1.TextMatrix(n, 6) = Trim(Text8.Text)
  MSHFlexGrid1.TextMatrix(n, 7) = Trim(Text4.Text)
end function
private sub command1_click()
static n as double
n=n+1
call luru(n)
end sub
但是固定行完了就要提示出错。
请问应该怎么解决?

解决方案 »

  1.   

    可以用additem来实现,就是flexgrid自己的事件,你把你的text中的内容都连接起来形成一个字符串,但是记得中间用vbTab来连接,比如 
    strT=text1.text & vbTab & text2.text & vbTab & text3.text
    vbTab是相当于给你把信息隔开的,这样才可以在添加的时候显示到各各属性列中,然后用
    flexgrid1.additem strT
    就可以添加一行信息了。
      

  2.   

    好像应该在luru里面新添加一行
    MSHFlexGrid1.rows=MSHFlexGrid1.rows+1

    MSHFlexGrid1.rows=n保证rows大于n就可以了你的出错提示中应该有“out of ……”