gpt4 book ai didi

c# - 更改工具提示控件

转载 作者:太空宇宙 更新时间:2023-11-03 13:47:41 25 4
gpt4 key购买 nike

我有一系列 textboxes,我想将它们与 tooltip 相关联。此工具提示 会在用户单击黑色文本框 时出现,然后在他们开始键入或离开文本框 时消失。 tooltip 应该放在 textbox 的正上方,这就是为什么我使用 ToolTip.Show 方法而不是 ToolTip .SetTooltip 方法(它让我可以控制位置)。

到目前为止,对于每个 textbox 我有 3 个方法;输入、离开和 TextChanged:

tt = new ToolTip();
String message = "some message"; //different for each textbox

private void textbox1_Enter(object sender, EventArgs e)
{
if (textbox1.Text == String.Empty)
{
tt.Show(message, textbox1, new Point(0, -2 * textbox1.Height));
}
}

private void textbox1_Leave(object sender, EventArgs e)
{
tt.Hide(textbox1);
}

private void textbox1_TextChanged(object sender, EventArgs e)
{
tt.Hide(textbox1);
}

现在考虑两个文本框。单击 textbox1 会按预期在预期位置触发 tooltip,然后退出 textbox1 会使其消失。在 textbox2 上尝试同样的事情也有效。现在,如果我再次单击 textbox1tooltip 会显示正确的消息,但位置与我单击 textbox2 时的位置相同>。不仅如此,tooltip 的形状与 textbox2 的形状相同,这意味着我的消息被截断了。 (textbox1 的消息比 textbox2 的消息长)。有谁知道这可能是什么原因造成的?

最佳答案

我认为只有当 IsBalloon 属性为真时才会发生这种情况。不幸的是,已知错误。

像这样尝试:

private void textbox1_Enter(object sender, EventArgs e) {
if (textbox1.Text == String.Empty) {
tt.Show(string.Empty, textbox1, 0);
tt.Show(message, textbox1, new Point(0, -2 * textbox1.Height));
}
}

关于c# - 更改工具提示控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14731991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com