Delphi风格的VCL TTrackBar:跟踪时隐藏焦点虚线矩形

发布于 2025-01-19 14:05:23 字数 317 浏览 0 评论 0原文

使用 VCL 样式时,如何在选择/跟踪时隐藏 VCL TTrackBar 周围的焦点?使用 Delphi 11.1

这不起作用:

SendMessage(tb1.Handle, WM_UPDATEUISTATE, UIS_SET OR UISF_HIDEFOCUS, 0);

在此处输入图像描述

How can I hide the focus around a VCL TTrackBar when selected/while tracking, while using a VCL style? Using Delphi 11.1

This didn't work:

SendMessage(tb1.Handle, WM_UPDATEUISTATE, UIS_SET OR UISF_HIDEFOCUS, 0);

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

虫児飞 2025-01-26 14:05:23

使用

SendMessage(tb1.Handle, WM_UPDATEUISTATE, UIS_CLEAR OR UISF_HIDEFOCUS, 0);

工作。

“在此处输入图像说明”

尽管肯定是这种情况:

SendMessage(tb1.Handle, WM_UPDATEUISTATE, UIS_CLEAR OR UISF_HIDEFOCUS, 0);

虽然控制 焦点使焦点矩形暂时重新出现,直到失去焦点为止。

Note :我仅尝试使用样式启用它。

Using

SendMessage(tb1.Handle, WM_UPDATEUISTATE, UIS_CLEAR OR UISF_HIDEFOCUS, 0);

does work.

Before

enter image description here

After

enter image description here

Although it is definitely the case that calling:

SendMessage(tb1.Handle, WM_UPDATEUISTATE, UIS_CLEAR OR UISF_HIDEFOCUS, 0);

while the control has focus causes the focus rectangle to temporarily re-appear until it loses focus.

Note: I only tried it with styles enabled.

南风几经秋 2025-01-26 14:05:23

您可以通过将其TabStop属性设置为˙false`来防止ttrackbar通过将其集中在焦点中。

当您执行此操作时,将永远不会显示ttrackbar的虚线。

好吧,唯一的例外是,如果您对形式没有其他可重点组件,那么当您开始与TrackBar进行交互时,虚线仍然会出现。

编辑:对:我忘记了VCL风格超越了许多其他物业。

您可以以某种方式修改VCL样式,以便禁用focuseffect ttrackbar,然后使用此修改的样式。

You can prevent TTrackBar from getting focused by setting its TabStop property to ˙False`.

When you do this the the dotted line around TTrackBar won't ever be shown.

Well the only exception is if you have no other focusable component on the form in which case the dotted line still appears when you start interacting with the trackbar.

EDIT: Right I forgot that VCL Styles override the said property amongst many others.

You could modify your VCL style in a way so you disable the FocusEffect for TTrackBar and then use this modified style instead.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文