Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Delphi 如何显示禁用TDBEdit的提示?_Delphi_User Interface_Tooltip_Delphi 2007_Hint - Fatal编程技术网

Delphi 如何显示禁用TDBEdit的提示?

Delphi 如何显示禁用TDBEdit的提示?,delphi,user-interface,tooltip,delphi-2007,hint,Delphi,User Interface,Tooltip,Delphi 2007,Hint,我有一个未启用的TDBEdit,因此没有显示提示。 让它在保持禁用状态的同时显示提示的最佳方式是什么?我能想到的唯一一件事是在TDBEdit上覆盖一个完全透明的控件,该控件已将ShowHint设置为True并设置了提示属性。将禁用的TWinControl(TDBEdit是TWinControl)放到启用的TWinControl容器上(例如TPanel)并将TPanel提示设置为所需的值。这或多或少是我目前在禁用的TDBEdit下面的图形控件中使用的解决方法…我同意,这只是一个肮脏的黑客行为,但禁

我有一个未启用的TDBEdit,因此没有显示提示。

让它在保持禁用状态的同时显示提示的最佳方式是什么?

我能想到的唯一一件事是在TDBEdit上覆盖一个完全透明的控件,该控件已将ShowHint设置为True并设置了提示属性。

将禁用的TWinControl(TDBEdit是TWinControl)放到启用的TWinControl容器上(例如TPanel)并将TPanel提示设置为所需的值。

这或多或少是我目前在禁用的TDBEdit下面的图形控件中使用的解决方法…我同意,这只是一个肮脏的黑客行为,但禁用的控件永远不会弹出提示。这是另一个不禁用控件而是使用颜色并设置只读属性的想法?我更喜欢TGraphic控件的更轻量级方法(没有窗口句柄,没有更改父项)是的,但我发现我的方法比网格上的不可见控件更“脏”:)实际上,你可能不只是为了网格而使用窗口句柄。我做了一些测试来查看句柄的限制,但我首先耗尽了内存。在Windows95和98中,句柄是一个问题。