⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 在使用非绑定的dbgrid时,系统总把最后行数据清除,不能得到更新.txt

📁 VB技巧问答10000例 VB技巧问答10000例
💻 TXT
字号:
我 的 关 于 非 绑 定 DBGrid的 问 题 已 经 设 法 找 到 解 决 办 法 。 解 决 办 法 如 下 : 
    在 程 序 中 加 入 代 码 判 断 当 Bookmark为 0时 , 修 改 行 是 第 一 行 还 是 最 后 一 行 , 用 Boolean型 变 量 Lastrow表 示 。 根 据 判 断 的 结 果 决 定 把 输 入 值 赋 给 数 组 的 相 应 单 元 。 具 体 要 在 各 个 事 件 程 序 中 加 的 代 码 如 下 : 
        在 窗 体 的 声 明 部 分 加 入 以 下 代 码 : 
        Private Lastrow As Boolean                        ′ 定 义 判 断 是 否 为 最 后 一 行 的 参 数 
        Private mTotalRows&                                      ′ 定 义 DBGird1的 最 大 行 数 
        在 DBGrid1的 AfterColEdit事 件 过 程 中 加 入 以 下 代 码 : 
        If Lastrow Then 
        DBGrid1.Refresh                                                    ′ 刷 新 DBGrid1 
    DBGrid1.Scroll 0, DBGrid1.VisibleRows                      ′ 重 新 滚 到 能 看 到 最 后 一 行 
    Lastrow = False                        ′ 因 为 光 标 已 经 移 到 别 处 ,所 以 把 Lastrow设 为 False 
    End If 
        在 DBGrid1的 Change事 件 过 程 中 加 入 以 下 代 码 : 
        Dim i As Integer, j As Integer 
    i = DBGrid1.Col                                                              ′ 列 号 
    j = DBGrid1.Row                                                               ′ 行 号 
    If DBGrid1.Bookmark = 0 Then 
    If j > 0 Then                        ′ 如 果 Bookmark为 0而 且 行 号 大 于 0, 一 定 是 最 后 一 行 
    Userdata(i, mTotalRows& - 1) = DBGrid1.Text          ′ 把 输 入 值 赋 给 最 后 一 行 的 相 应 列 
    Lastrow = True 
    Else                                                               ′ 如 果 不 是 最 后 一 行 
    UserData(i, DBGrid1.Bookmark) = DBGrid1.Text            ′ 把 输 入 值 赋 给 第 一 行 的 相 应 列 
    End If 
    Else                                                          ′ 如 果 Bookmark不 等 于 0 
    UserData(i, DBGrid1.Bookmark) = DBGrid1.Text          ′ 把 输 入 值 赋 给 数 组 的 对 应 的 元 素 
    End If 
<END>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -