在Delphi的DBGrid中插入其他可视组件

Delphi提供了功能强大的DBGrid组件,以方便进行数据库应用程序设计。但是如果我们仅仅利用DBGrid组件,每一个获得焦点(Grid)只是一个简单的文本编辑框,不方便用户输入数据。Delphi也提供了一些其他数据组件来方便用户输入,比如DBComboBox,DBCheckBox等组件,但这些组件却没有DBGrid功能强大。Delphi能不能象Visual Foxpro那样让DBGrid中获得焦点网格可以是其它可视数据组件以方便用户呢?其实我们可以通过在DBGrid中插入其他可视组件来实现这一点。

Delphi对DBGrid处理的内部机制,就是在网格上浮动一个组件——DBEdit组件。你输入数据的网格其实是浮动DBEdit组件,其他未获得焦点地方不过是图像罢了。所以,在DBGrid中插入其他可视组件就是在网格上浮动一个可视组件。因此任何组件,包括从简单的DbCheckBox到复杂的对话框,都可以在DBGrid中插入。下面就是一个如何在DBGrid中插入DBComboBox组件的步骤,采用同样的办法可以插入其他组件。

1、在Delphi 4.0中新建一个项目。

2、分别拖动的Data Access组件板上DataSource、Table,Data Controls组件板上DBGrid,DBComboBox四个组件到Form1上。

3、设置各个组件的属性如下:

rcf1对象 属性 设定植
Form1 Caption 在DBGrid中插入SpinEdit组件示例
DataSource1 DataSet Table1
Table1 DatabaseName DBDEMOS
  TableName teacher.DBF   Active True
DBGrid1 DataSource DataSource1
DBComboBox1 DataField SEX
  DataSource DataSource1
  Visible False
  Strings Items. 男| 女

注意:我在这里用了Teacher.dbf,那是反映教职工的性别,只能是“男”或者是“女”。

时间: 2024-10-30 09:01:43

在Delphi的DBGrid中插入其他可视组件的相关文章

Delphi在DBGrid组件中显示和编辑MEMO字段

Delphi之所以能在.NET与JAVA"两座大山"重压之下,至今仍被广大编程爱好者喜爱.支持,究其原因,除了VCL框架设计精妙之外,强大的数据库程序开发能力也是其长盛不衰的关键因素之一.说到数据库开发不能不提到DELPHI中自带的功能强劲的数据感知组件,这些组件中最为常用的当属DBGrid组件,这个组件提供了二维表的数据显示方式,一次提供的信息量大.结构鲜明.一目了然.虽然它有这么多优点,然而"没有银弹"(其大意为没有一种形式可以解决所有的问题)这句IT界中人所共

在DBGrid中可选中行而又可进入编辑状态

如何在DBGrid中选中行,而又让它可以进入编辑状态? 也许你会问我这有什么用?呵呵,做数据库应用的兄弟们会深有感触,当用DBGrid显示的字段过多时,用户不得不拉动最下面的滚动条,去看最右边的东西,如果没有设置DBGrid->Options[dgRowSelect],那么,拉到最右边之后,很有可能看串行的:如果设置了DBGrid->Options[dgRowSelect],则在拉到最右边之后,不会看串行,但是鼠标点击其它行(不是当前选中行)时,DBGrid的视图一下子就会回到显示最左边的那一

将DBGrid中的数据导出到Word和Excel

昨天ccrun刚写了将ListView中内容导出到Word文档和Excel文档的一篇文章,今天写程序凑巧用到了将DBGrid中数据导出到Office的功能,干脆再写个兄弟版的函数出来,DBGrid2Word和DBGrid2Excel,分别实现将DBGrid中数据导出到Word和Excel文档.需要注意的是DBGrid中的数据并不代码数据库中所有的数据,因为数据集在打开的时候有可能进行了筛选,取决于使用者如何打开这个数据集,总之就是DBGrid中显示多少数据,就导出多少.看在写代码很辛苦的份上,请

让Delphi的DBGrid支持鼠标轮

现在的大多数的鼠标都有鼠标轮,比如,当我们浏览网页时,鼠标轮上下移动,网页就自动上下滚动.鼠标轮的确给我们的操作带来很多方便,但是,在Delphi的大多数控件中都只支持 MouseDown,MouseUp,MouseMove等事件,而不直接支持MouseWheel事件,我们在帮助客户设计一个查看程序时就碰到这样的问题.这个查看程序的数据是放在一个DBGrid中的,数据比较多,超出整个屏幕,如果用鼠标轮上下移动,则DBGrid的光标只在可见范围内移动,超出屏幕的数据必须用键盘或右侧的滚动条,给用户

在MsSql、Access两种数据库中插入记录后马上得到自动编号的ID值_木马相关

本编文章将要介绍重点解释如何在Ms Sql Server中更新或添加一条记录后立即得到其标识列的值,这个值在ACCESS就是我们熟知的自动编号的 ID值,好了,闲话不多说,代码我也不多写,只写关键些,相信各位高手一看就明白,呵呵.后面也附带了在ACCESS中获取的方法,虽然在ACCESS 中获取自动编号的文章网上虽然很多,但放在此做为一个总结吧. Set testRs=Server.CreateObject("ADODB.RecordSet") '创建要测试的对象 testRs.Ope

java-请问论坛的帖子中插入的图片该怎么处理?

问题描述 请问论坛的帖子中插入的图片该怎么处理? 正在学习阶段,想自己实现一个基本功能都有的论坛(java),希望谁能告诉我那些大的网站都是怎么实现用户发表的帖子的,用ueditor这类的插件还是说有更为妥当的方式?又是怎么实现删除的? 解决方案 没啥好方法,你看这个问答也是,插入图片要""添加url""如不需各种富媒体添加,就自实现好了尤其对图片的添加,需要大量处理的,还是用三方插件来的快捷插件都大同小异,随意选择,ueditor界面挺漂亮(不知最近更新高亮代码的

关于jdbc中插入和更新的问题

问题描述 关于jdbc中插入和更新的问题 我用的oracle用jdbc进行相关操作,可是,只有插入语句能执行,不能执行更新和删除语句,这是怎么回事呢? 解决方案 不能执行更新和删除语句,检查下代码有问题吗?运行时有没有异常信息呢?如果你用的是纯JDBC操作的话,问题就可能出在代码上,把代码的异常分支打印堆栈日子,检查更新删除操作有没有提交事务.事出必有因,仔细找找呗. 解决方案二: 那就是你的sq语句,出现问题了,和JDBC没有关系,既然你保存能进去,那就证明数据库连接成功,在好好检查一下. 解

在WPS2005文字中插入组织结构图的技巧

  在微软的Office组件中,Word和PowerPoint都可以在文档中插入组织结构图,用来表示一些组织之间的相互关系.在WPS2005中,却没有提供这样的功能,无论是WPS文字还是WPS演示,"插入"菜单中都找不到组织结构图的身影.通过网上高人指点和一番摸索,终于找出一条在WPS2005中插入组织结构图的方法. 首先,用鼠标右键单击工具栏的空白处,在右键菜单中选中"绘图"工具,调出绘图工具栏. 图1 主体内容完成后,我们为结构图添加连接线.在"绘图&

WPS文字中插入复杂表格数据快速计算

  WPS文字是我们常用的办公软件之一,因其简单.实用,所以深受广大用户的喜爱.当我们编辑文档过程中,有时需要在文档中插入表格,对某些数据进行比对或辅助说明,此时就需要对的表格中某些数据结果进行统计了. 对于表格内数据的计算,大家平时都习惯于用Excel来操作,从而忽略了WPS文字中的表格计算功能,其实WPS文字中的表格计算功能同样强大,不但能进行快速操作,还能进行复杂的公式运算. 一.表格数据快速计算 当我们在WPS中插入表格后,有时需要对表格中的数据进行统计.汇总, 以便对文档内容作补充说明