【发布时间】:2012-07-20 13:52:16
【问题描述】:
我有一个链接到 DataSource(链接到 TADOTable)的 DBGrid。所有这些都通过 TADOConnection 运行并连接到 MS Access
网格包含各种值,我想在单击特定字段时对其进行编辑。 我在更新普通文本字段时没有遇到任何困难,但是我无法编辑包含 OLE 对象的字段。
我想要做的是,当我单击一个字段时,我想要一个打开的对话框打开并让我选择一个文件。之后,我选择的文件必须更新为我选择的行的字段。
我该怎么做呢?
【问题讨论】:
-
DevExpress QuantumGrid 具有此功能以及更多功能。 devexpress.com/Products/VCL/ExQuantumGrid
-
谢谢,但有什么方法可以在不使用非标准组件的情况下实现这一点?
-
你可能想试试网格的 columns 属性。在这里,您可以将列定义为具有省略号按钮,然后您可以处理事件...这可能会提供您正在寻找的功能类型..
-
您可以将按钮和打开对话框放到表单中。使按钮不可见。调整网格 onDrawColumnCell 中按钮的大小和位置。使按钮在网格 col 退出时不可见。在按钮的 onclick 事件中,执行 opendialog,获取文件名,将 dbgrid 置于编辑状态,并使用所选文件更新字段。一些教程存在于 (delphi.about.com/od/usedbvcl/l/aa081903a.htm) 如何将 varius 组件添加到 dbgrid。通过上面的修改,你可以达到你想要的。
标签: delphi delphi-7 dbgrid tadotable