900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > C#窗体Winform 鼠标悬停在控件上 提示框 显示信息。

C#窗体Winform 鼠标悬停在控件上 提示框 显示信息。

时间:2023-01-18 19:37:34

相关推荐

C#窗体Winform 鼠标悬停在控件上 提示框 显示信息。

文章开始之前,先看下一个简短的录频效果。

实现原理:

他是鼠标悬停在控件上方后,弹出另一个窗体,该窗体可以展示不同的自定义组件,达到显示不同的各种需求的目的。

一、先制作容器窗体

using System;using System.Drawing;using System.Windows.Forms;namespace TipsWindow{public class ExplainForm : FormBase{public ExplainForm(Control content);public Point Offset { get; set; }public Control Content { get; }public void SetAutoCloseTimer(int interval = 5000);public void SetFormBorderStyle(FormBorderStyle style);public void SetIcon(bool isShowIcon);public void SetTitle(string title);protected override void Dispose(bool disposing);protected override void OnPaint(PaintEventArgs e);protected override void OnShown(EventArgs e);}}

Offset:属性偏移,指偏离鼠标位置。一般如果挨着鼠标来弹出提示信息的话,不好看,所以,会有一个偏移。

Content:既然是容器,那么就要允许别人放东西以供展示,所以Content提供了这样的角色,他的内容展示到容器窗体中。请注意看,Content是Control控件,意味着,你可以自行定义你任何想要的自定义组件,所以,开放自由,是毫无疑问的。所以,你想要什么样子的提示,都可以,如下面2张图所示:

SetAutoCloseTimer:设定定时器,该定时器的作用为自动关闭这个提示信息窗体。在一些特定需求下,此方法可能对您很有用。

SetFormBorderStyle:设置弹出信息的窗体边框样式。

SetIcon:设置弹出窗体的图标样式,即左上角的图。

SetTitle:设置弹出窗体的标题。

二、有了容器窗体后,制作自己的用户组件

用户组件,即UserControl。如下图,我做了一个简单的示例组件:

三、将容器窗体加载到主窗体中

主窗体就是你希望使用弹出信息功能的窗体。即下图界面:

源码下载:/download/mazhiyuan1981/12996475

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。