问题标签 [tooltip]

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 投票
4 回答
18721 浏览

c# - 全局更改 ToolTip InitialShowDelay 属性

我有一个应用程序,它在功能区控件上设置了上百个不同的工具提示。所有的工具提示都弹出得相当快(大约半秒),我想增加弹出延迟。经过一些研究,似乎在 WPF 中执行此操作的唯一方法是通过 ToolTipService.InitialShowDelay 属性。

我的问题是,我是否必须通过 XAML 并明确说

对于每个具有工具提示的控件?或者是否有某种方法可以全局设置此属性,使用样式之类的东西?

感谢您的任何想法。

0 投票
1 回答
853 浏览

c# - 使工具提示按我想要的方式运行的最简单方法是什么

我不喜欢默认的工具提示行为。首先,我不喜欢这样,在显示“AutoPopDelay”毫秒的工具提示后,如果您再次将鼠标移到控件上,它就会消失并且不再出现。其次,我不喜欢 AutoPopDelay 限制为 5000 毫秒。

我找到了一种使工具提示始终重新出现在鼠标移到控件上的方法,即使它显示的时间超过 AutoPopDelay 值:我在 MouseLeave 处理程序中调用 toolTip.Hide()。这样,工具提示将在鼠标悬停时再次出现。但是我还没有找到一种简单的方法来让工具提示显示更长时间(超过最大 5000 毫秒)。如果我在 MouseEnter 处理程序中调用 toolTip.Show(),则 toolTip 显示在不好的位置。我喜欢它自动显示的位置:)

那么,你有什么建议?

0 投票
1 回答
3429 浏览

wpf - WPF DataTemplate:如何即时创建工具提示?

我正在使用 DataTemplates 来呈现 ItemsControl 中的项目。我想为每个项目显示一个工具提示。如果我使用 ToolTip="{Binding MyToolTip,Mode=OneWay}" 之类的绑定,WPF 会在开始时获取一次工具提示,并且在打开时不会更新工具提示。

我的项目实现了 INotifyPropertyChanged,因此原则上我可以为 MyToolTip 生成更改通知。问题是,工具提示是基于底层模型中的许多信息生成的。这些信息经常更改,为 MyToolTip 属性生成更改通知既麻烦又低效。此外,我不希望最初生成所有项目的工具提示。相反,我想在打开工具提示时强制生成一个新的工具提示。我该怎么做?

0 投票
3 回答
4164 浏览

c++ - 如何使用动态 unicode 文本设置 Win32 工具提示控件?

我在使用 unicode 格式的动态文本提供 Win32 工具提示控件时遇到了一些麻烦。我使用以下代码来设置控件:

只要我在ti.lpszText. 但是,我希望文本是动态的,所以我设置ti.lpszTextLPSTR_TEXTCALLBACKW处理我的 WindowProc() 中的回调,如下所示:

这不起作用,因为我从未收到过TTN_GETDISPINOW消息。(注意:如果我处理它TTN_GETDISPINFO并使用它NMTTDISPINFO来提供一个 char 数组,那么它就可以工作,但是没有 unicode 支持......)

我猜我在这里的设置或消息处理中做错了什么?有关如何正确执行此操作的任何建议?

更新
另请注意,我的项目不是在 unicoe 模式下编译的(即未定义 _UNICODE 并且项目设置为使用多字节字符集)。这是故意的,我想保持这种状态,因为我不想重写整个应用程序以支持 unicode(至少现在还没有)。由于 _UNICODE 定义用于选择各种函数和数据结构的 *W 版本,我希望通过在我的代码中显式使用这些实现相同的结果,如上所示。

0 投票
2 回答
2820 浏览

c# - 关于如何将无模式消息框显示为工具提示的想法

每当用户将鼠标悬停在菜单项上时,我都需要显示一个无模式的消息框。我不能使用 messagebox.show(...) 因为它是一种模式。所以我所做的是创建一个单独的窗口表单并使用菜单项上的悬停事件显示表单。我有两个问题:

1)当窗口窗体显示菜单失去其可见性。
2) windows 窗体不会像工具提示那样出现在菜单项旁边。

关于如何自定义组件的工具提示以使其看起来和行为像 Windows 窗体的任何想法?

0 投票
2 回答
1913 浏览

c# - 修改或隐藏表单的标题工具提示

我们有一个 MDI 表单,其中包含一些子表单,这些子表单具有不同的标题,显示当前加载的文档的文件名。当子窗体最大化时,它们的标题文本被放置在父窗口的标题栏中,这通常会导致文本太长而无法放入条中,并且 Windows 足以添加省略号并截断文本。

但是,当您将鼠标悬停在主窗口的标题栏上时,它会显示一个工具提示,其中应该是整个字符串,但工具提示通常包含字符串的一小部分。例如,如果主表单的文本是:

它会在工具提示中显示如下:

编辑:它总是将工具提示截断为 100 个字符,这让我相信它是某处指定的上限。

有没有办法改变它以显示整个字符串,或者如果没有,完全禁用工具提示?

任何语言都是可以接受的,尽管我们在 C# 中这样做。

0 投票
1 回答
928 浏览

jquery - jQuery:级联弹出窗口

我有以下代码来显示弹出 div:

div 最初是隐藏的,并且在单击 pop1 锚点时使用一些 jQuery 代码将其变为可见。这是我为此制作的插件:

一切似乎都井井有条,但是当我在 div 中添加一个控件时,整个事情都中断了,例如:

span 不会触发 div 的点击事件并隐藏 div,这是我不想要的。任何人都知道我需要在这里做什么来防止这种情况发生吗?谢谢你,V

0 投票
1 回答
598 浏览

c# - 拖放后工具提示消失

我在支持拖放的 Windows 窗体应用程序中有一个 C# UserControl。在我的例子中,拖动时控件的位置没有改变,只有一个新的控件在光标被释放的地方产生。此 UserControl 还拥有一个 ToolTip。当我将鼠标移到控件上时,会弹出工具提示。拖放也可以正常工作。

但是从控件中拖放后,工具提示不再弹出。

有没有人知道如何在任何拖放操作后不重新创建工具提示的情况下解决这个问题?

0 投票
3 回答
2193 浏览

c# - 如何确定何时显示工具提示?

我正在.Net WinForms 中编写一个日历控件,它将显示每个日期的工具提示。

确定何时显示工具提示的最佳方法是什么?

立即显示它MouseMove会妨碍它,所以我希望它显示鼠标悬停在每个日期单元格上的时间。

MouseHover事件仅在 之后的第一次悬停时触发MouseEnter,因此我无法使用它。

最好的方法是什么?

编辑:我正在使用 WinForms

0 投票
2 回答
1478 浏览

wpf - “拦截”应用程序范围内任何工具提示的打开

当工具提示即将打开时,我想在状态栏中的 wpf 应用程序中显示任何控件的工具提示文本。

当然,我可以尝试递归循环主窗口的所有子控件,并将它们的ToolTipOpening事件设置为始终相同的方法。但是有没有更简单的方法?

Application.Current.AnyToolTipOpening事件一样的东西?