【发布时间】:2020-04-29 10:38:43
【问题描述】:
德尔福 10.3.3 FireDAC:DBGrid / FDQuery / MySQL 视频控制器
大家好,
我有一个包含这些字段的表格
----------------------
| id | data |
----------------------
| 1 | 0=A;1=B;2=C |
| 2 | 2=Z |
| 3 | |
| 4 | 0=Y;1=X |
| 5 | |
| 6 | |
每一行数据只代表表中的变化
我希望它显示在 DBGRID 中:
-----------------------
| id | C0 | C1 | C2 |
-----------------------
| 1 | A | B | C |
| 2 | A | B | Z |
| 3 | A | B | Z |
| 4 | Y | X | Z |
| 5 | Y | X | Z |
| 6 | Y | X | Z |
我现在能做的只有下表:
-----------------------
| id | C0 | C1 | C2 |
-----------------------
| 1 | A | B | C |
| 2 | | | Z |
| 3 | | | |
| 4 | Y | X | |
| 5 | | | |
| 6 | | | |
为了获得这个结果,我在事件 FDQuery1.BeforeOpen 中创建了额外的列 而在 OnCreateFields 事件中,我填充每一列但 我不知道上一行内容,
那么,我该如何填写 DBgrid 中缺失的字段? 谢谢 弗兰克
【问题讨论】:
-
您可以改用
TStringGrid。 -
第一行是否总是包含所有状态?您需要编辑或添加行吗?
-
Olivier:我尝试过使用 TStringGrid,但更新需要更多时间(5 次)
-
sddk:第一行并不总是包含所有状态。我不需要编辑或添加行,只需显示即可。
-
“更多时间更新”是什么意思?显示网格?它不应该。你有多少行?