解决方案 »
- TServerSocket控件如果限制连接个数?我想只限制1个连接
- 这种报表格式如何用ReportMachine实现
- 兄弟们有问题了高手请看。。。。。。。。。。。。。。。。。。。
- ? 呜~~~大哭,谁能给我一份摄像头源码,呜~~~~~~~~~~~救命呀!
- 关于ShellComboBox,ShellTreeView,ShellListViewS,hellChangeNotifier
- SQL语句出错
- 急,从一个日期里提取月份,数据库是delphi自带的paradox,再线等
- 有关Delphi的简单问题
- About TQuery的Master/Detail;
- PPP拨号上网协议 有偿寻求技术支持
- 为什么delphi 一运行就包这个错误...在线等
- cxgrid 选中行样式的高级问题 ( 要求比较高.....)
DataSource1的DataChange事件中处理
显示dbgrid当前记录的字段值。
DBGrid1.Datasource.Dataset.Fields[0].AsString //当前记录第一个字段值
DBGrid1.Datasource.Dataset.Fields[1].AsString //当前记录第二个字段值
DBGrid1.Datasource.Dataset.Fields[2].AsString //当前记录第三个字段值
DBGrid1.Datasource.Dataset.Fields[n].AsString //当前记录第n个字段值
UPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUP
DBGrid1.DataSource.Dataset.Fields[dbgrid1.Columns.Grid.SelectedIndex].AsString;
目前面临的最后一个问题是,我想光标离开的时候获取这个值,不管这个值有没有编辑过,要用什么事件啊
用oncolexit只能解决在同一行切换光标的问题,如果光标在不同行的同一列切换就失去作用了。用什么控件可以行列切换时都能获取值啊。
DBGrid->DataSoure->Query(Table)?那不用考虑什么当前行了,你在dbGrid里面的onCellChange这之类的事件里面,直接写
Query(Table).fieldbyname('字段名').asstring;(……)如果要深究的话,就是当你在DBGrid中选中一行的时候,数据集中的浮标就已经指到了数据集对应的行中,所以你不用做任何查找或者移动浮标的操作,直接取数据集中字段的值就可以了。把你要的字段的值取出来之后,保存到变量里面,发送就ok
准备条件:定义两个全局变量,并且在窗口创建期初始化。
1、当单元格点击的时候(OnCellClick),判断当前的列值和其中一个全局变量是否一致,判断当前的数据记录的值和另一个全局变量是否一致。
2、如果不一致,判断全局变量是否是初始值,如果是初始值,那么把当前的列和记录的值分别赋给两个全局变量。如果不是初始值,说明单元格已经改变,那么把全局变量作为你要的数据保存起来供后面使用。
3、把全局变量修改为当前的列和记录值。