请教高手,DBGrid的问题 希望大家帮我解决谢谢! 大家好 我想把DBGrid查询到的数据 做成动态的 也就是点每一行数据时 进入PageControl的另外一个页面(这个页面就是显示数据的) 请问这怎么做呢 是在DBGrid事件里加个OnCellClick事件吗? 是的话,这个事件代码咋写呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 OnCellClick事件中写入:PageControl1.ActivePageIndex := n; 其中n为你需要转入的TabSheet页的序号 既然知道在OnCellClick中写,还有什么不清楚的呢 具体n的数值,可以查看TabSheet的属性“Pageindex”的值 如PageControl1第一页是放置DBGrid,第二页面是放置详细。procedure TForm1.DBGrid1CellClick(Column: TColumn);begin PageControl1.ActivePageIndex := 1; //给详细页面赋值 end; 在OnCellClick中PageControl1.ActivePageIndex:=1 玉米的DataSet.AfterScroll事件 是什么意思? afterscroll可以在你用键盘切换记录是触发,而点击必须要点,而且重复点击同一条记录会重复触发(可以控制)但是afterscroll也会也负面影响,这要看具体情况了 我试了试 可以进去详细页面 但是进去每次显示的都是第一条数据啊 你在DBGrid点第二条记录 它进去显示的详细还是第一条的记录啊 楼主说明了是点击记录时发生事件,用afterscroll就不太适合了,况且很多人都习惯用Tab和方向键来回查看数据的,这样使用后会造成很多不必要的麻烦 我试了试 可以进去详细页面 但是进去每次显示的都是第一条数据啊 你在DBGrid点第二条记录 它进去显示的详细还是第一条的记录啊 这种情况,你可以在点击的事件中,先设定几个变量,预先读取点击位置的数据,然后在要显示的那个TabSheet的onshow事件里面把这几个变量的数据读过去就行了,变量要是全局变量。或者在OnCellClick事件中直接指定那个TabSheet页面上的数据 这么解释了还不明白?你说的那个详细页面是什么内容?跟dbgrid里面的数据有何关系? 详细页面是是想显示DBGRID的每条记录啊 也就是查看问卷面板里显示的数据是DBGRID的每条记录 这些是查看调查问卷里的东西 怎么现在显示个数据库记录,都要搞得这么繁琐呢,还点击什么,还afterscroll什么,直接托几个DBedit上去,练好字段,什么都不用你做用不同edit也行,无非就是写几行显示代码吗 这么简单的事情,同意bdmh说的,直接在TabSheet详细页面上摆几个dbtext或者dbedit,设置好datafield和datasource,保持跟dbgrid的datasource一致就可以了,不用编写什么代码 我的datafield不能设置啊 说MIssing sql proporty 这个问题真是头疼还没解决呢 先设置datasource,保持跟dbgrid的datasource一致,然后在设置datafield 请问DELPHI的字符串结束符是什么? 打印支票两数字之间的空格问题 有关fastreport的问题 Borland 公司收购ESTIMATE Professional, 提升软件开发规范及可预见性 求购无时间限制的录音程序原代码 100分,一篇关于组件读写机制的文章,欢迎提点意见 如何查询如此条件下的数据集? FASTREPORT组件那有下载的 串口通信高手请进! 求求大家:有谁知道如何获得网卡或计算机唯一ID的方法,请赐教!谢谢!!! trerview父节点的父节点 DBGrid数据赋值问题!
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
PageControl1.ActivePageIndex := 1;
//给详细页面赋值
end;
PageControl1.ActivePageIndex:=1
但是afterscroll也会也负面影响,这要看具体情况了
这种情况,你可以在点击的事件中,先设定几个变量,预先读取点击位置的数据,然后在要显示的那个TabSheet的onshow事件里面把这几个变量的数据读过去就行了,变量要是全局变量。或者在OnCellClick事件中直接指定那个TabSheet页面上的数据