问题标签 [dbgrid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
19950 浏览

delphi - 将滚动条隐藏在 Delphi dbgrid 中(即使在调整大小时)

对于我们的 dbgrid,我们希望滚动条一直被隐藏。由于 TDBGrid 没有“滚动条”属性,我们使用:

然而,当我们调整窗口(和包含 dbgrid 的面板)的大小时,滚动条会出现一秒钟,并且只有在调用上述两种方法后才会再次隐藏。

一个解决方案是在 DrawColumnCell 中调用这些方法,但这会导致 dbgrid 闪烁,即使 DoubleBuffered 设置为 true。

有没有办法永久隐藏滚动条?

提前致谢!

0 投票
1 回答
4258 浏览

delphi - Delphi TDBGrid如何在样式为gdsGradient时更改所选颜色

我只是想使用delphi XE,在此之前我一直是Delphi7的忠实粉丝。
我看到新的 dbgrid 允许使用主题和渐变样式。

我正在使用渐变并设置行选择,它具有用于列标题的渐变开始和结束属性。
但是要设置的属性在selected color哪里?
这很奇怪,因为颜色不匹配,selected color总是蓝色渐变。

我可以做到这一点customdraw,我只想知道是否有任何方法可以在没有自定义绘图的情况下进行更改。

0 投票
1 回答
816 浏览

delphi - Delphi:DBGrid 选项没有保存?

我的问题是下一个:

我有自己的基于 TDBGrid 的 DBGrid。

因为在很多地方更好看Selection,我以为我在Create上设置了,如果我稍后设置为False,属性编辑器会保存Options属性。所以构造函数将其创建为:

好的,我认为没关系,因为我将其设置为 True,创建开始时将其设为 True,但在 Loaded 时,Delphi 会将其更改为好的值(False)。

但经验表明,现在这行不通!

我不知道为什么。

我将自己的 dbgrid 放在 Form1 上。ASS 选项已打开。我把它设置为假。

我启动应用程序。现在又开始了。当我在 LOADed 上显示 Option 的值时,我得到了 True 值。因此,不会根据需要加载该值。

我不知道为什么会这样,但我认为这是基于“默认”???可能默认为 False,所以如果我将其设置为 False,那么就不会将值保存到 DFM 中...

那么在没有这种影响的情况下保存值的可能方法是什么?

感谢您的帮助:dd

0 投票
5 回答
15356 浏览

delphi - delphi 如何将整数值转换为布尔值

我有一个数据库字段值,它是一个像 0 和 1 这样的整数。在将数据加载到数据库网格时是否可以将此整数值转换为布尔值。我期待没有条件检查,比如直接类型转换。

谢谢

0 投票
1 回答
3803 浏览

delphi - Delphi:DBGrid 列标题提示 - 强制重置提示?

我认为我在自己的 DBGrid 中实现了列标题提示。这似乎很简单——我想。

我添加了

标题提示:TStrings

包含以下格式的信息:

名称=值

其中 name 是 (0-99) 用于非基于字段的列,而 fieldname 用于基于字段的列。value 是该列的 Hint,crlf 是 \n。

一切正常, OnMouseMove 是基于位置的提示。

但是:只显示第一个提示,下一个不显示。我认为这是因为提示机制在鼠标到达“控件”时被激活......当我离开控件并再次出现时,我得到另一个提示 - 一次。无论我将 ShowHint 设置为关闭。

因为如果可能的话我不想创建自己的HintWIndow,所以我寻找一种方法将Hint 机制重置为Applicaion 相信:这是该控件中的第一个案例。我可以以任何方式执行此操作,例如“发送消息”,或者如果存在则调用“取消提示”等。

你知道这种方式吗?

感谢您的帮助,祝您有美好的一天!

问候:dd

0 投票
2 回答
2360 浏览

mysql - delphi DBGrid显示JOIN结果

我正在使用 BDS 2006、MySQL DB(用于连接的 MyDAC 组件),并且DBGrid我的表单上有一个组件,它显示我的 DB 表中的记录。

现在我需要JOIN两个表并在我的DBGrid

我应该得到的结果视图是查询的结果

SELECT e_salary.e_basic,e_details.e_name FROM e_details INNER JOIN e_salary ON e_details.e_id=e_salary.e_id;

当我搜索时,还有另一种选择

SELECT e_salary.e_basic,e_details.e_name FROM e_details, e_salary WHERE e_details.e_id=e_salary.e_id;

e_details,e_salary 是我的两张表,e_id 是我的PRIMARY KEY

目前我有 2DBGrid个用于 e_details,另一个用于 e_salary

是否可以只有 1 个 DBGrid 显示两个表中的值?或者我必须单独显示 2 个DBGrid

如果可能的话,我该怎么做

PS-视图中要添加更多列,并且两个表的行数相同

提前致谢

0 投票
2 回答
18525 浏览

delphi - 如何在 TDBGrid 中设置活动单元格?

TDBGrid我想通过代码激活一个单元格。“激活”是指用户在单元格内单击,准备编辑单元格内容。我怎么能这样做?

编辑:这可能涉及两个步骤:更改当前活动的单元格,然后进入编辑模式。

0 投票
2 回答
2648 浏览

mysql - 使用 MySQL 进行 Delphi DBGrid 格式化

我有一个关于 delphi DBGrid 中数据单元格格式的问题。DBGrid 组件连接到 MySQL 数据库,该数据库在运行时被填充。

我有一列用于日期时间,另一列用于布尔值。当 datetime 列的时间部分为 0 时,它只显示日期,但我需要它来显示日期和时间,即使时间为零。布尔字段显示 1 或 0,但我需要它显示“开”或“关”。

我试过投射字段,然后设置格式,如

但我收到一条错误消息:“带有消息‘无效类类型转换’的异常类 EInvalidCast。”

对此的任何帮助将不胜感激。

0 投票
3 回答
2160 浏览

delphi - 与大量查找字段一起使用的最佳数据库网格

我有一个带有几个外键的表,如下所示:

我想在 DBGrid 中显示它,但当然我不希望*_id显示所有的 ',而是显示 id 指向的数据。
我不想使用查询来解析 id,(现在)我想使用普通的TTable.

您会推荐哪个 DBGrid 变体可以在外键单元格中使用类似 DBLookupComboBox 的东西来查找外键?

0 投票
3 回答
2204 浏览

delphi - 使用 ADO 具有预读功能的 DBGrid

我正在使用 ADO 连接到 SQL Server 2005。

我的 TADODataSet 选择了 100 万条记录。使用 TDBGrid 并将其设置TADODataSet.CursorLocationclUseServer有效。但是 TDBGrid 窒息!

如何选择 100 万条记录,避免分页,并且仍然能够在网格中显示记录,而无需将所有记录都提取到客户端,让网格在我上下滚动时提前读取?

SQL 企业管理器可以异步执行查询并选择 100 万条记录,没有任何问题(也是 MS-ACCESS)。