我不太了解VB6
,但是我现在在双击一个单元格上有一个问题FlexGrid
。我可以看到,这是一个广受欢迎的问题,已经问了很多遍,但是大多数用户都在网格中四处循环。我的虽然更简单,但是却崩溃了。
网格具有3行3列。双击第一行中的任何列时,它都可以正常工作。但是当我找到其他人时,会抛出一个错误。错误提示:
运行时错误“ 381”:
下标超出范围。
当前它在下面的行崩溃,该行是2并且col是3:
TextMatrix = myFlexGrid.TextMatrix(row, col)
我只是想知道为什么当行和列的索引都合适时它会崩溃。我认为它可能是从零开始的,但是当单击第一行的第三个单元格时,它可以正常工作。
有没有办法在调试器(Microsoft Visual Basic 6.0)中查看网格的内容?
flexgrid的行和列确实基于0。但是,如果采用FlexGrid.Row和FlexGrid.Col值,则它们将始终在范围内,因为它们表示当前选定的单元格。这样的事情应该起作用:
private sub FlexGrid_DblClick()
dim CellContents as string
with FlexGrid
CellContents = .TextMatrix(.Row,.Col)
end with
end sub
尽管在您对所选单元格感兴趣的情况下,您始终可以使用
CellContents = FlexGrid.Text
在暂停执行的同时,可以使用IDE的“本地”窗口在运行时获取有关任何控件(或变量)的大量信息。不幸的是,这似乎不包括flexgrid的单元格内容。但是,您始终可以使用“即时”窗口在网格上四处? FlexGrid.TextMatrix(0,2)
寻找,并用线条查找导致错误的值和限制。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句