注册 | 登录
收藏 | 帮助
热门文章
编辑推荐
相关文章  
用MailSpy拦截局域网内危险的病毒
使用Honeypots同计算机蠕虫病毒作
设置MSN可自动防卸MSN小尾巴
脚本图片类后门的完美使用方法
CPU使用频率100%一定是中毒了吗
清除不明进程msser 珊瑚QQ病毒防
我的黑色工具箱—几款黑客工具的
知已知彼——MSN 信息安全攻防实
菜鸟入门常用的八种安全工具使用
使用Windows防火墙十大经典问题荟
您现在的位置: 顶尖设计 >> IT学院 >> 编程开发 >> VB >> 文章正文
使用MsFlexGrid控件的几个函数
作者:redcoral  来源:CSDN  点击:  更新:2006-12-19
简介:

在VB处理数据显示的时候,使用表格是一种好的方法,虽然DataGrid可以与数据源绑定,但是总有美中不足,就是外观不好看,所以有时应用MsFlexGrid显示数据还是一种比较好的方法,以下几个函数是用来控制MsFlexGrid的程序

(本人语言表达能力有限,还请见谅)

 

'MsFlexGrid操作函数

'合并列
Public Function MergeCol(GridObj As Object, ByVal StartCol As Long, ByVal EndCol As Long, ByVal ColValue As String, ByVal CurrentRow As Long) As Boolean
If StartCol > EndCol Or StartCol > GridObj.Cols Or CurrentRow > GridObj.Rows Then
    MsgBox "对不起,行列设置错误!", vbOKOnly, App.Title
    MergeCol = False
    Exit Function
End If

For I = StartCol To EndCol
GridObj.MergeCol(I) = True
GridObj.TextArray(faIndex(GridObj, CurrentRow, I)) = ColValue
GridObj.ColAlignment(I) = flexAlignCenterCenter
Next I


GridObj.MergeRow(CurrentRow) = True

MergeCol = True

End Function




'合并行
Public Function MergeRow(GridObj As Object, ByVal StartRow As Long, ByVal EndRow As Long, ByVal RowValue As String, ByVal CurrentCol As Long) As Boolean
If StartRow > EndRow Or StartRow > GridObj.Rows Or CurrentCol > GridObj.Cols Then
    MsgBox "对不起,行列设置错误!", vbOKOnly, App.Title
    MergeRow = False
    Exit Function
End If

For I = StartRow To EndRow
GridObj.MergeRow(I) = True
GridObj.TextArray(faIndex(GridObj, I, CurrentCol)) = RowValue
GridObj.ColAlignment(CurrentCol) = flexAlignCenterCenter

Next I
GridObj.MergeCol(CurrentCol) = True
MergeRow = True

End Function

'转换索引
Public Function faIndex(GridObj As Object, ByVal row As Integer, ByVal col As Integer) As Long
If row > GridObj.Rows Or row < 0 Or col > GridObj.Cols Or col < 0 Then
    MsgBox "对不起,行列设置错误!", vbOKOnly, App.Title
    faIndex = -1
   
    Exit Function
End If

faIndex = row * GridObj.Cols + col

End Function


'插入行
Public Function SetItem(GridObj As Object, ByVal row As Integer, ByVal col As Integer, ByVal SetValue As String) As Boolean
If row > GridObj.Rows Or row < 0 Or col > GridObj.Cols Or col < 0 Then
    MsgBox "对不起,行列设置错误!", vbOKOnly, App.Title
    SetItem = False
    Exit Function
End If
    GridObj.TextArray(faIndex(GridObj, row, col)) = SetValue
   
    SetItem = True
End Function

'得到单元格值
Public Function GetItem(GridObj As Object, ByVal row As Integer, ByVal col As Integer) As String

If row > GridObj.Rows Or row < 0 Or col > GridObj.Cols Or col < 0 Then
    MsgBox "对不起,行列设置错误!", vbOKOnly, App.Title
    GetItem = ""
    Exit Function
End If
    GetItem = GridObj.TextArray(faIndex(GridObj, row, col))
End Function



这是我以前写的几个函数,不知能不能帮上你, 我弄Excel时间挺长,有什么问题可以给我发E_mail

w.hua@ynmail.com






  • 上一篇文章:
  • 下一篇文章:
  • 分享此文:该页面添加到 Mister Wong 添加到雅虎Yahoo!收藏 Add to:Del.icio.us Post to Furl Digg this 添加到Google书签 reddit spurl blogmarks 365Key 评论  收藏  分享  打印
     我来说两句
    姓名:       验证码:   
    主页: 
    评分: 1分 2分 3分 4分 5分
    本频道近期热评文章:
      关于我们 | 联系我们 | 站点地图 | 广告投放 | 友情链接 | 在线留言 | 版权申明
    版权所有 © 2004-2007 顶尖设计(bobd.cn)
    未经授权禁止转载,摘编,复制本站内容或建立镜像. 沪ICP备07504942号 
    网络110
    报警服务