我有一个 Delphi 表单,里面有TFDConnection,TFDQuery,TDataSource和TDBGrid(select * from table_1)并将其放入DBGrid中。我已经建立了组件之间的所有连接,但在我启动查询后,(返回12行)在我的DBGrid中显示了12行,但它们是空的。显然我忘记了一些东西,使我无法在DBGrid中看到我的数据。你能帮助我在我的DBGrid中缺少什么吗?行动?
- 1-将所有组件添加到表单中。
- 2-连接FDQuery与FDConnection,TDataSource与FDQuery,DBGrid与TDataSource。
- 3-连接参数测试成功(问题不在我的连接参数中)
- 4-DBGrid中的行数(12),但没有可见的信息。
- 5-如果我遍历我的FDQuery,我可以看到我需要的所有信息,但这并不能帮助我填充我的DBGrid。
5条答案
按热度按时间lrl1mhuk1#
你能试试这个吗:
在Form的OnShow代码中显式激活
TFDQuery
。像这样,字符串
这对我很有效,希望能有所帮助。
41zrol4v2#
如果DBGrid的
DefaultDrawing
属性设置为False
,那么您将看到DBGrid中的行数正确,但网格的单元格为空。如果DBGrid是这种情况,显然只需将DefaultDrawing
设置为True
。myzjeezk3#
为了解决这个问题(我也遇到过同样的问题),在打开查询后,设置:
字符串
问题就解决了
6jygbczu4#
我知道这个主题已经很老了,但也许它能帮助到一些人。在我的例子中,解决方案是:删除所有在设计时创建的DBGrid列,或者将列的(TColumn)FieldName 属性与数据库表中命名的字段名称精确匹配。
zqdjd7g95#
对于有此问题的其他人,这里有一个解决方法:确保网格控件中的列名(不是Title)与查询中的字段名匹配。