dbctrlgrid在运行时删除并填充条目

时间:2015-02-07 15:17:11

标签: delphi runtime parent delphi-2009

我想在运行时(从数据库)加载dbctrlgrid的内容。所以我遇到了几个挑战:

  1. 如何检测dbctrlgrid是否为空和/或如何清除它。
  2. 如何在面板上放置Tlabel和Tdbtext。主要问题似乎是找到合适的父母。 dbctrlgrid不起作用。有一个名为Tdbctrlpanel的对象应该可以使用,但我不知道如何访问它。我在Tdbctrlgrid的属性或方法中找不到它。
  3. 欢迎使用任何代码snipplet

2 个答案:

答案 0 :(得分:1)

回答1)

您不查询TDBCtrlGrid,查询基础数据集;如果.IsEmpty网格为空。

当人们开始使用数据感知(网格)组件时,他们倾向于将其视为数据容器'你可以查询和修改,但事实并非如此。通过一些修改该数据的内置编辑器将其视为基础数据的视图。那么相同的规则'适用于这些编辑器:更新基础数据集。

答案 1 :(得分:0)

要向TDBCtrlGrid添加控件,您必须将控件父级设置为Panel的{​​{1}}属性。问题是这个属性受到保护。有几种方法可以克服这种限制。其中一个显示在Delphi上:Accessing protected members of a component
这是Delphi程序员已知的“受保护黑客”的常用技术。