📄 qa36.htm
字号:
<HTML><head><title>问专家-如何锁定Delphi的DBGRID的列</title></head>
<BODY bgcolor=#FFFFFF background=../imgs/back.gif vlink=#0000FF>
<table width=100%>
<tr>
<td width="20%" valign="TOP" bgcolor="#CCFFCC">
<font color="#FF0000">
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../index.html" target="_top">首页</a><br><br>
<b>问与答</b><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../require.htm" target="_top">提问须知</a><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../ask.htm" target="_top">提出问题</a><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../main.htm" target="_top">浏览答案</a><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../diff.htm" target="_top">难题征解</a><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../catalog.htm" target="_top">分类介绍</a><br>
<img src="../imgs/bullet7.gif" WIDTH="15" HEIGHT="13"><a href="http://www.east.net.cn/technology/askpro/board.htm" target="_blank">热门问题</a><br><br>
<b>本站服务</b><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../mail.htm" target="_top">新闻邮件</a><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../vote.htm" target="_top">站点调查</a><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../experts.htm" target="_top">加盟专家组</a><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../netstart.htm" target="_top">编程站点精选</a><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../books/index.html" target="_top">网上图书</a><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="../lihai.htm" target="_top">主持人</a><br><br>
<img src="../imgs/bullet7.gif" width="15" height="13"><a href="http://zealsoft.yeah.net" target="_top">热情软件屋</a>
</font></td>
<td valign="TOP">
<!-- VC -->
<!-- BEGIN CLICK2NET CODE -->
<CENTER><script src=http://ads.8848.net/show.asp?userid=zealsoft></script></center>
<p align="center">
<!-- VC -->
<!-- QA Start -->
<h2 align=center>如何锁定Delphi的DBGRID的列</h2>
<p>所属类别:<ul>
<A href='../delphi.htm'>Delphi</A><br>
<A href='../dbgrid.htm'>DBGrid</A>
</ul>
<p>编号:QA000036<br>
建立日期: 1998年9月1日 最后修改日期:1998年9月1日
<p><img src='../imgs/q.gif' width=32 height=32>
<b>李剑锋</b>: <br> <font color='#800000'>我 在 使 用 Delphi 3进 行 数 据 库 编 程 的 时 候 , 希 望 DBGRID构 件 在 显 示 数 据 的 时 候 能 象 FoxPro的 BROWSE命 令 一 样 , 锁 定 左 边 指 定 的 几 列 不 进 行 滚 动 , 请 问 应 用 什 么 方 法 来 实 现 ?
</font>
<p><img src='../imgs/a.gif' width=32 height=32><b>回答</b>:
<p> 我 们 知 道 Delphi的 TStringGrid有 一 个 属 性 FixedCols来 指 定 不 滚 动 的 列 。 虽 然 TDBGrid不 能 直 接 使 用 这 一 属 性 , 但 通 过 强 制 类 型 转 换 也 可 以 首 先 这 一 功 能 , 因 为 这 两 个 类 都 来 自 TCustomGrid类 。 下 面 我 们 以 Delphi 3.0的 Demos\Db\CtrlGrid为 例 来 说 明 具 体 的 用 法 。 在 这 个 例 子 的 TFmCtrlGrid.FormShow过 程 中 加 入 如 下 一 行 :
<br> TStringGrid(DbGrid1).FixedCols := 2;
<br> 运 行 该 程 序 , 就 可 以 得 到 图 1所 示 的 效 果 , 在 左 右 移 动 各 列 时 , Symbol列 不 会 移 动 。 除 了 这 种 方 法 , 也 可 以 采 用 下 面 的 方 法 : 首 先 在 Form声 明 部 分 加 上
<br> type TMyGrid = Class(TDBGrid) end;
<br> 然 后 在 TFmCtrlGrid.FormShow过 程 中 加 入 :
<br> TMyGrid(DbGrid1).FixedCols := 2;
<br> 两 者 从 形 式 上 略 有 不 同 , 但 实 质 都 是 一 样 的 。 我 们 这 里 设 置 FixedCols为 2, 这 是 因 为 在 DBGrid构 件 最 左 侧 有 个 指 示 列 , 如 果 你 将 DBGrid的 Options属 性 的 dgIndicator设 为 False, 则 应 设 置 FixedCols为 1。
<br> <img src=../imgs/dbgrid.gif>
<br> 图 1 通 过 强 制 类 型 转 换 使 TDBGrid类 支 持 FixedCols属 性
<p><i>此问题由<b>李海</b>回答。</i>
<!-- QA End -->
<p><table width=100%><tr><td bgcolor="#00ff7f"><font color=#0000ff><center><b><i>如 果 您 认 为 这 个 回 答 对 您 有 帮 助, <br>请 点 一 下 本 页 上 方 的 广 告 。 谢 谢 。</b></i></center></font></td></tr></table>
<form ACTION="http://www.zealsoftstudio.com/cgi-bin/FeedBack.cgi" method="POST">
<input type=hidden name="recipient" value="askpro@china.com">
<center><table border=1>
<tr><td align="RIGHT" bgcolor="#E0E1A4">您的意见的类别</td><td><SELECT NAME=subject>
<OPTION SELECTED> 更好的答案
<OPTION> 希望得到进一步解释
<OPTION> 我有有关代码可以提供给网友
<OPTION> 链接错误
<OPTION> 文字错误
<OPTION> 其他
</SELECT>
</td></tr>
<tr><td align="RIGHT" bgcolor="#E0E1A4">您的电子邮件</td><td><input type=text name="email"></td></tr>
<tr><td align="RIGHT" bgcolor="#E0E1A4">您的名字</td><td><input type=text name="realname"></td></tr>
<tr><td align="RIGHT" bgcolor="#E0E1A4">您的建议<br>(请尽可能详细)</td><td><textarea name="建议" rows="8"></textarea></td></tr>
<tr><td align="CENTER"><input type="Submit" value="确定"></td><td align="CENTER"><input type="reset" value="清除,重填"></td></tr>
</table></center>
<input type=hidden name="env_report" value="REMOTE_HOST,HTTP_USER_AGENT,HTTP_REFERER">
<input type=hidden name="required" value="email,realname,建议">
<input type=hidden name="ID" value="000036">
</form>
</td>
</tr>
</table>
<br>
<script>
document.write("<img src=http://askpro.east.net.cn/cgi-bin/log.pl?url="+escape(document.URL)+" border=1 width=5 height=5 alt=Log>");
document.write("<img src=http://top.263.net/count/top.dll?Type=Img2&add=1&id=9331&refer="+escape(top.document.referrer)+" border=0>");
document.write("<img src=http://best.netease.com/cgi-bin/log.cgi?user=zealsoft&refer="+escape(document.referrer)+"&cur="+escape(document.URL)+" border=0>");
</script>
<CENTER><P>
<HR><B><A HREF=mailto:askpro@china.com><img src=../imgs/mail.gif border=0></a>如果您有任何建议和意见, 请给我发个电子函件<A HREF=mailto:askpro@china.com>askpro@china.com</A>。
</B></P></CENTER>
<CENTER><P><B><I>问专家<a href=http://askpro.yeah.net>http://askpro.yeah.net</a><br>版权所有 1997-2000 <a href=http://zealsoft.yeah.net>热情软件屋</a></I></B></P></CENTER>
<center>
<a href="http://banner.linkexchange.com/37/X550821/clickbanner" target="_top">
<img width=468 height=60 border=0 ismap alt="" src="http://banner.linkexchange.com/37/X550821/showbanner?free"></a><br>
<!-- END LINKEXCHANGE CODE -->
<CENTER><A
HREF=http://ads49.hyperbanner.net/url.cfm/ID=9343&Page=37&Ver=28&Pos= TARGET=_top><IMG WIDTH=468 HEIGHT=60 BORDER=1 ISMAP HSPACE=0 VSPACE=0 SRC=http://ads49.hyperbanner.net/gif.cfm?ID=9343&Page=37&Ver=28></A><br>
<!---------Start WebUnion------------> <a href=http://www.webunion.com/cgi-localbin/click.cgi?win1664:037 target=_blank><img width=400 height=40
src=http://www.webunion.com/cgi-localbin/bserve.cgi?win1664:037
alt="Banner from WebUnion Chinese Network" border=1></a></center><!---------End WebUnion------------>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -