在Delphi中,每次更改TDbGrid选定位置时,会触发哪个具体的事件?

2026-04-10 19:082阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计406个文字,预计阅读时间需要2分钟。

在Delphi中,每次更改TDbGrid选定位置时,会触发哪个具体的事件?

在我的项目中有一个TDbGrid,每次选择不同行时,我都会尝试关闭一个事件。行中的任何更改都会更新到同一DataSource的所有数据感知控件,但还有其他更改,我需要一个事件处理程序来处理。我需要为这种更改创建一个事件处理流程。

我的项目中有一个TDbGrid,每次更改所选行时我都会尝试关闭一个事件.行中的任何更改都已更新链接到同一DataSource的所有数据感知控件,但还有其他更改,我需要一个事件处理程序.

我以为OnColEnter会起作用.根据帮助文件,它在以下情况下触发:

>用户使用导航到单元格
键盘.例如,当
用户使用Tab键或Home
键.
>用户单击鼠标按钮
在牢房里.
> SelectedField或SelectedIndex
财产设置.

不幸的是,当用户在启用dgRowSelect选项的情况下使用键盘导航时,它不会触发,并且没有OnRowEnter.并且在进行选择更改之前会触发OnKeyDown事件.我试图在这里模拟TListBox的数据感知版本,我需要一些东西来替换List Box的OnClick处理程序,尽管名称实际上随着选择的改变而消失,无论是通过鼠标还是键盘.有没有办法用TDbGrid做到这一点?如果没有,那么必须有一些其他网格控制来完成它.有谁知道它是什么? (最好是开源?)

在Delphi中,每次更改TDbGrid选定位置时,会触发哪个具体的事件?

OnDataChange是一种选择.另一个是,在TDataset方面,事件AfterScroll.大多数时候,我发现它比OnDataChange更实用;因为在OnDataChange中,一个滚动事件带有Field参数nil(这是一个陷阱,可能是你的AV编码的原因之一).
标签:选定位置

本文共计406个文字,预计阅读时间需要2分钟。

在Delphi中,每次更改TDbGrid选定位置时,会触发哪个具体的事件?

在我的项目中有一个TDbGrid,每次选择不同行时,我都会尝试关闭一个事件。行中的任何更改都会更新到同一DataSource的所有数据感知控件,但还有其他更改,我需要一个事件处理程序来处理。我需要为这种更改创建一个事件处理流程。

我的项目中有一个TDbGrid,每次更改所选行时我都会尝试关闭一个事件.行中的任何更改都已更新链接到同一DataSource的所有数据感知控件,但还有其他更改,我需要一个事件处理程序.

我以为OnColEnter会起作用.根据帮助文件,它在以下情况下触发:

>用户使用导航到单元格
键盘.例如,当
用户使用Tab键或Home
键.
>用户单击鼠标按钮
在牢房里.
> SelectedField或SelectedIndex
财产设置.

不幸的是,当用户在启用dgRowSelect选项的情况下使用键盘导航时,它不会触发,并且没有OnRowEnter.并且在进行选择更改之前会触发OnKeyDown事件.我试图在这里模拟TListBox的数据感知版本,我需要一些东西来替换List Box的OnClick处理程序,尽管名称实际上随着选择的改变而消失,无论是通过鼠标还是键盘.有没有办法用TDbGrid做到这一点?如果没有,那么必须有一些其他网格控制来完成它.有谁知道它是什么? (最好是开源?)

在Delphi中,每次更改TDbGrid选定位置时,会触发哪个具体的事件?

OnDataChange是一种选择.另一个是,在TDataset方面,事件AfterScroll.大多数时候,我发现它比OnDataChange更实用;因为在OnDataChange中,一个滚动事件带有Field参数nil(这是一个陷阱,可能是你的AV编码的原因之一).
标签:选定位置