- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我在我的表单上使用了一个 ToolTip
控件,但我发现即使我的光标在一个控件上,工具提示也会显示在其他地方。我想在我的光标所在的控件中显示它。
如上图所示,当我的光标位于 Textbox3
上时,工具提示显示在 Textbox4
上。我希望它显示为指向 Textbox3
。
我目前正在使用以下代码在 3 个不同的事件中显示工具提示:
private void txtImmediateddest_Enter(object sender, EventArgs e)
{
ttpDetail.Show("Ex:111000025", txtImmediateddest);
}
private void txtImmediateddest_MouseHover(object sender, EventArgs e)
{
ttpDetail.Show("Ex:111000025", txtImmediateddest);
}
private void txtImmediateddest_MouseUp(object sender, MouseEventArgs e)
{
ttpDetail.Show("Ex:111000025", txtImmediateddest, e.Location);
//toolTipimmeddest.Show("Required & Must be 9 Digits", txtImmediateddest);
}
编辑
private void textBox1_MouseHover(object sender, EventArgs e)
{
ttpDetail.AutoPopDelay = 2000;
ttpDetail.InitialDelay = 1000;
ttpDetail.ReshowDelay = 500;
ttpDetail.IsBalloon = true;
//ttpDetail.SetToolTip(textBox1, "Ex:01(Should be Numeric)");
ttpDetail.Show("Ex : 01(Should Be Numeric)", textBox1,textBox1.Width, textBox1.Height/10,5000);
}
这工作正常但是当鼠标最初放在控件上时它显示正常如果我第二次它显示正确
请看下面的图片
最佳答案
您看到的问题是因为您的ToolTip
控件的IsBalloon
property设置为“真”。设置此属性后,ToolTip
不会更改其相对位置,从而导致气球的箭头指向错误的控件。
这是一个证明这种现象的并排比较:
显然,简单的解决方法是通过将 IsBalloon
属性设置为“False”来禁用它。控件将恢复显示标准的矩形工具提示窗口,该窗口看起来正确对齐。
如果您不能接受,则必须指定希望工具提示气球出现的确切位置。不幸的是,ToolTip
控件中似乎存在错误,导致它在第一次附加到控件时无法正确显示。这通常可以通过使用空字符串调用一次 Show
方法来解决。例如,使用以下代码:
private void txtImmediateddest_Enter(object sender, EventArgs e)
{
ttpDetail.Show(string.Empty, textBox3, 0);
ttpDetail.Show("Ex:111000025", textBox3, textBox3.Width / 2, textBox3.Height, 5000);
}
产生这个结果:
当然,走这条路时您的运气也可能会有所不同。我一般不使用内置的 ToolTip
控件来编辑控件(例如文本框和组合框)。我发现 P/Invoke SendMessage
更可靠, 指定 EM_SHOWBALLOONTIP
和一个 EDITBALLOONTIP
structure包含有关我要显示的工具提示的信息。我将查找适当的定义并编写包装代码作为读者的练习,因为这个答案已经太长了。
关于c# - 为什么不显示指向正确控件的气球提示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4645614/
是否有一个很好的模拟/等同于JEDI Desktop Alert(桌面右下角的一种气球)? 气球提示无法像堆栈一样显示(新提示位于其他提示的顶部),但 JEDI Desktop Alert 可以做到。
是否可以通过编程方式关闭 TTrayIcon 气球提示? 问题: 我有一个计时器,每分钟检查一次消息。当它发现一条消息(例如 ABC 服务已停止)时,它会显示带有消息的气球: procedure TF
如何更改 google 地球中地标气球的样式?不是kml数据,是气球本身。例如,我想圆润边界。我做了一个示例,但总是在我放置的样式周围看到空白边框。 Javascript代码: var ge=null
这是我当前的图像圈气球的 CSS .circle-image{ width: 64px; height: 64px; border-radius: 50%; backg
我有一个 TEdit,其中 PasswordChar 设置为 *,并且我希望如果 Caps Lock 模式已打开。仅当编辑器获得焦点或打开 Caps Lock 模式且焦点位于该编辑器中时,才会出现该标
我有 4 个股票图表想要比较。当我尝试为它们设置 ballon 属性时,我总是得到一些多余的属性。 我的第一个想法是只指定一个 StockGraph 但我得到了一个额外的对象。 let chart
让用户将鼠标悬停在链接/标签/文本上并快速弹出包含有关该项目的信息的了解更多气球的最佳方式是什么。有什么原生于 HTML5 的东西吗?我浏览了 w3schools 和网络上的其他一些资源,但没有发现任
我正在使用 osmdroid 和 osmdroid 奖励包来展示气球。在气球内部有一个 ScrollView ,其中包含一个线性布局(垂直)作为 subview 。 当我尝试向下滚动时,我的 map
每当我在 Visual Studio 中使用宏时,系统托盘中都会出现一个烦人的提示气球和伴随的“砰”声。它说: Visual Studio .NET macros To stop the macro
如何在 iOS 中触摸或点击标记时制作 map 气球?简而言之,我希望我的应用程序的 map 功能能够弹出 map 气球以显示有关标记所在位置的某些信息。 我正在使用谷歌地图,因为我听说它现在比 iO
我已经实现了一个融合表格 map 来为我的谷歌地图创建国家填充......但是我真的需要摆脱当你点击一个国家时弹出的信息窗口/卡片。我试着格式化卡片,这样就没有实际内容了,但它根本没有改变卡片。它们仍
我是一名优秀的程序员,十分优秀!