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

📄 锁定dbgrid左边的列.txt

📁 大量Delphi开发资料
💻 TXT
字号:




我 在 使 用 Delphi 3进 行 数 据 库 编 程 的 时 候 , 希 望 DBGRID构 件 在 显 示 数 据 的 时 候 能 象 FoxPro的

BROWSE命 令 一 样 , 锁 定 左 边 指 定 的 几 列 不 进 行 滚 动 , 请 问 应 用 什 么 方 法 来 实 现 ?


我 们 知 道 Delphi的 TStringGrid有 一 个 属 性 FixedCols来 指 定 不 滚 动 的

列 。 虽 然 TDBGrid不 能 直 接 使 用 这 一 属 性 , 但 通 过 强 制 类 型 转 换 也 可 以 首 先 这 一 功 能 , 因

为 这 两 个 类 都 来 自 TCustomGrid类 。 下 面 我 们 以 Delphi 3.0的 Demos\Db\CtrlGrid为 例 来

说 明 具 体 的 用 法 。 在 这 个 例 子 的 TFmCtrlGrid.FormShow过 程 中 加 入 如 下 一 行 : 


     TStringGrid(DbGrid1).FixedCols := 2; 


    运 行 该 程 序 , 就 可 以 得 到 图 1所 示 的 效 果 , 在 左 右 移 动 各 列 时

, Symbol列 不 会 移 动 。 除 了 这 种 方 法 , 也 可 以 采 用 下 面 的 方 法 : 首 先 在 Form声 明 部 分 加



     type TMyGrid = Class(TDBGrid) end; 


    然 后 在 TFmCtrlGrid.FormShow过 程 中 加 入 : 


     TMyGrid(DbGrid1).FixedCols := 2; 


    两 者 从 形 式 上 略 有 不 同 , 但 实 质 都 是 一 样 的 。 我 们 这 里 设 置

FixedCols为 2, 这 是 因 为 在 DBGrid构 件 最 左 侧 有 个 指 示 列 , 如 果 你 将 DBGrid的 Options属

性 的 dgIndicator设 为 False, 则 应 设 置 FixedCols为 1。 




 











    图 1 通 过 强 制 类 型 转 换 使 TDBGrid类 支 持 FixedCols属 性


 

⌨️ 快捷键说明

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