VB问题(FlexGrid)

agan 2000-07-06 08:33:00
在vb中使用FlexGrid的排序功能对一列双精度数排序,当数字很大时(大概超过3亿),排序发生错误,请问什么原因?应如何解决?谢谢!
...全文
132 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Un1 2000-07-06
  • 打赏
  • 举报
回复
去Compare事件中自己写比较
Tyro 2000-07-06
  • 打赏
  • 举报
回复
排序发生错误是什么意思?
出现异常还是排序乱了?
Tyro 2000-07-06
  • 打赏
  • 举报
回复
当数字很大时确实有问题,可以设置MSFlexGrid1.Sort = 9
然后在MSFlexGrid1的Compare事件中自己排序,不过会有些慢

例如:
Private Sub MSFlexGrid1_Compare(ByVal Row1 As Long, ByVal Row2 As Long, Cmp As Integer)
Dim str1 As String, str2 As String
str1 = MSFlexGrid1.TextMatrix(Row1, 0)
str2 = MSFlexGrid1.TextMatrix(Row2, 0)
If CDbl(str1) > CDbl(str2) Then
Cmp = -1
Else
Cmp = 1
End If
End Sub

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧