网页是否经常在电脑右下角弹窗显示消息?其实Winform也是可以实现的。下面介绍两种方法。

第一步:设计窗体

第二步:实现代码

第一种方法

引用user32

声明常量

窗体Load事件

窗体FormClosing事件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
[DllImport("user32")]
        private static extern bool AnimateWindow(IntPtr hwnd, int dwTime, int dwFlags);
  
        //下面是可用的常量,根据不同的动画效果声明自己需要的
        private const int AW_HOR_POSITIVE = 0x0001;//自左向右显示窗口,该标志可以在滚动动画和滑动动画中使用。使用AW_CENTER标志时忽略该标志
        private const int AW_HOR_NEGATIVE = 0x0002;//自右向左显示窗口,该标志可以在滚动动画和滑动动画中使用。使用AW_CENTER标志时忽略该标志
        private const int AW_VER_POSITIVE = 0x0004;//自顶向下显示窗口,该标志可以在滚动动画和滑动动画中使用。使用AW_CENTER标志时忽略该标志
        private const int AW_VER_NEGATIVE = 0x0008;//自下向上显示窗口,该标志可以在滚动动画和滑动动画中使用。使用AW_CENTER标志时忽略该标志该标志
        private const int AW_CENTER = 0x0010;//若使用了AW_HIDE标志,则使窗口向内重叠;否则向外扩展
        private const int AW_HIDE = 0x10000;//隐藏窗口
        private const int AW_ACTIVE = 0x20000;//激活窗口,在使用了AW_HIDE标志后不要使用这个标志
        private const int AW_SLIDE = 0x40000;//使用滑动类型动画效果,默认为滚动动画类型,当使用AW_CENTER标志时,这个标志就被忽略
        private const int AW_BLEND = 0x80000;//使用淡入淡出效果
  
        private void Form1_Load(object sender, EventArgs e)
        {
            int x = Screen.PrimaryScreen.WorkingArea.Right - this.Width;
            int y = Screen.PrimaryScreen.WorkingArea.Bottom - this.Height;
            this.Location = new Point(x, y);//设置窗体在屏幕右下角显示
            AnimateWindow(this.Handle, 1000, AW_SLIDE | AW_ACTIVE | AW_VER_NEGATIVE);
        }
  
        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            AnimateWindow(this.Handle, 1000, AW_BLEND | AW_HIDE);
  
        }

第二种方法

只要在窗体的初始化InitializeComponent()方法后面加上如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
InitializeComponent();
            Rectangle rectangle = Screen.AllScreens[0].WorkingArea;
            this.StartPosition = FormStartPosition.Manual;
            this.Location = new Point(rectangle.Width - this.Width, rectangle.Height);
            this.TopMost = true;
            System.Threading.Thread thread = new System.Threading.Thread(() =>
            {
                while (this.Top >= rectangle.Height - this.Height)
                {
                    this.Invoke(new MethodInvoker(delegate
                    {
                        this.Top = this.Top - 1;
                        System.Threading.Thread.Sleep(1);
                        Application.DoEvents();
                    }));
                }
            });
            thread.Start();

winform右下角弹窗的更多相关文章

  1. C# winform 右下角弹窗

    [DllImport("user32")] private static extern bool AnimateWindow(IntPtr hwnd, int dwTime, in ...

  2. C# Winform右下角弹窗方式

    [方法一] 第一步:winform项目创建完成后,添加一个窗口,命名为:Messages .(加上最开始的Form1,一共为两个窗口),双击主窗口进入后台代码 . 第二步:在Messages 窗口中添 ...

  3. Winform实现右下角弹窗_提示信息

    网页是否经常在电脑右下角弹窗显示消息?其实Winform也是可以实现的.下面介绍两种方法. 第一步:设计窗体 第二步:实现代码 第一种方法 引用user32 声明常量 窗体Load事件 窗体FormC ...

  4. 【Winform-右下角弹窗】实现右下角弹窗,提示信息

    网页是否经常在电脑右下角弹窗显示消息?其实Winform也是可以实现的.下面介绍两种方法. 第一步:设计窗体 第二步:实现代码 第一种方法 引用user32 声明常量 窗体Load事件 窗体FormC ...

  5. JS 实现右下角弹窗

    <!DOCTYPE HTML> <head> <title>JS实现右下角弹窗</title> <meta http-equiv="co ...

  6. js右下角弹窗代码(实测好用)

    实测好用的js右下角弹窗代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "htt ...

  7. [C++] 自己主动关闭右下角弹窗

    近期腾讯.迅雷等各种client,都越发喜欢在屏幕的右下角弹框了. 有骨气的人当然能够把这些软件卸载了事,可是这些client在某些情况下却又还是实用的.怎么办呢? 作为码农,自己实现一个自己主动关闭 ...

  8. [C++] 自动关闭右下角弹窗

    最近腾讯.迅雷等各种客户端,都越发喜欢在屏幕的右下角弹框了. 有骨气的人当然可以把这些软件卸载了事,但是这些客户端在某些情况下却又还是有用的.怎么办呢? 作为码农,自己实现一个自动关闭右下角弹窗的程序 ...

  9. jquery实现登录后右下角弹窗提醒(附带简单样式)

    页面代码如下:   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...

随机推荐

  1. PHP 使用编码树,生成easyui中的tree样式

    生成树的时候,数据库中一般设计的都为无级数,即为:父子节点的树,例如:基本的数据表设计为: nodecode 节点编码 parentnodecode 父节点编码 nodename  节点名称 这样的形 ...

  2. paper 132:图像去噪算法:NL-Means和BM3D

    这篇文章写的非常好,确定要~认真~慎重~的转载了,具体请关注本文编辑作者:http://wenhuix.github.io/research/denoise.html   我不会告诉你这里的代码都是f ...

  3. 今天携程出事了:让我们来学习下http的响应码

    就在今天,2015年5月28日,中国最大的旅游机票预订网站--携程网粗大事了.据传携程网的数据库被人物理删除了,而容灾备份的数据又无法正常使用,服务器全面遭受瘫痪.每小时给携程带来的损失约100万美元 ...

  4. activity 所需jiar包

    activity下载后有很多jar包有的jar包不一定用得上,也有些jar是重复的,这里就整理了一下必要的jar包 路径.. \activiti-5.19.0.2\wars\activiti-expl ...

  5. [SQL入门级] 第一天 SQL初步

    SQL语句分为以下三种类型: DML:Data Manipulation Language 数据操纵语言 INSERT UPDATE DELETE SELECT DDL:Data Definition ...

  6. VM VirtualBox 安装 Android 4.3虚拟机完整教程

    大家好,今天给大家带来一篇安装安卓虚拟机的教程! 好了,现在开始我们的教程! 一.安装准备 1.Android 4.3安装镜像(文件名:android-x86-4.3-20130725.iso) 电脑 ...

  7. redis 参考文章

    1. redis配置认证密码:http://blog.csdn.net/zyz511919766/article/details/42268219

  8. 压力测试工具JMeter入门教程

    1.Jmeter 概要描叙 jmeter 是一款专门用于功能测试和压力测试的轻量级测试开发平台.多数情况下是用作压力测试,该测试工具在阿里巴巴有着广泛的使用,估计是不要钱吧,哈哈,功能上来说,整个平台 ...

  9. 安装win7的那些事

    由于win7系统只支持MBR格式的分区,如果强行将win7安装到UEFI分区方式的硬盘上将不能启动,所以,如果你要给别人的win8或者win10的OEM系统安装win7的话,记得先将重要数据备份出去, ...

  10. C# Winform中DataGridView绑定后DataGridViewCheckBoxColumn无法显示的问题

    在控件DataGridView绑定数据源后,发现DataGridViewCheckBoxColumn不能显示当前的check值.经过一番努力,现将完整代码奉献出来,仅供参考. 错误代码: /*禁止自动 ...