C#WinForm获取当前活动子窗体使用鼠标滚轮事件改变窗体大小

news2024/11/26 21:22:30

获取当前活动子窗体使用鼠标滚轮事件改变窗体大小,实例在文末,可下载。

这个主要分三个重点

第一步

我们需要让子窗体显示在父窗体中

Form22 = new Form2();
Form22.TopLevel = false; // 不是顶级窗体
//Form22.Parent = this;// 设置父窗体  一定不要加这句话
Form22.BringToFront();
Form22.MdiParent = this; // 指定父窗体
Form22.Location = new Point(5, 5);//5,100就是你指定的位置
Form22.Show(); // 显示
 
Form33 = new Form3();
Form33.TopLevel = false; // 不是顶级窗体
Form33.BringToFront();
Form33.MdiParent = this; // 指定父窗体
Form33.Location = new Point(50, 50);//5,100就是你指定的位置
Form33.Show(); // 显示

注意:一定不要加这句话,否则获取不到当前活动窗体

Form22.Parent = this;// 设置父窗体

第二步获取当前活动窗体:

// 获取当前活动窗体
if (this.ActiveMdiChild is Form2)
{}
Else if(this.ActiveMdiChild is Form3)
{}

第三步添加鼠标滚轮事件

在构造函数中添加:

// 添加滚轮事件
MouseWheel += new MouseEventHandler(Form1_MouseWheel);

然后在其下添加方法Form1_MouseWheel(方法名字要与构造函数中添加的相同,具体是什么,看你心情)

 
       /// <summary>
        /// 鼠标滚轮事件
        /// </summary>
        public void Form1_MouseWheel(object sender, MouseEventArgs e)
        {
            // 获取当前活动窗体
            if (this.ActiveMdiChild is Form2)
            {
                if (e.Delta > 0)
                {
                    Form22.Width += 5;
                    Form22.Height += 5;
                }
                if (e.Delta < 0)
                {
                    Form22.Width -= 5;
                    Form22.Height -= 5;
                }
            }
            else if (this.ActiveMdiChild is Form3)
            {
                if (e.Delta > 0)
                {
                    Form33.Width += 5;
                    Form33.Height += 5;
                }
                if (e.Delta < 0)
                {
                    Form33.Width -= 5;
                    Form33.Height -= 5;
                }
            }
        }

最后效果:

微信截图_20190919161124.png

以上的代码基本上就实现了鼠标滚轮事件缩放子窗体的操作

有好的建议,请在下方输入你的评论。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/782037.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

索引使用——SQL提示、覆盖索引、回表查询

1. SQL提示 use index是给MySQL一个提示&#xff0c;在执行的时候尽量使用该索引&#xff0c;至于MySQL最后会不会接收该建议&#xff0c;则不一定。 ignore index是mysql忽略某个索引。 force index则强制mysql使用该索引。mysql别无选择。 2.覆盖索引 覆盖索引和回表查…

MQ消息介绍

1、同步通讯 立即发出&#xff0c;立即回复。 同步通讯过程中&#xff0c;若有消息失败&#xff0c;一直重试&#xff0c;会造成阻塞&#xff0c;影响其它功能。 优点&#xff1a;时效性高 2、异步通讯 3、什么是MQ 稳定性、可用性、并发性极为重要。 MQ&#xff1a;消息即…

RocketMQ教程-(4)-领域模型-消费者(Consumer)

本文介绍 Apache RocketMQ 中消费者&#xff08;Consumer&#xff09;的定义、模型关系、内部属性、行为约束、版本兼容性及使用建议。 定义​ 消费者是 Apache RocketMQ 中用来接收并处理消息的运行实体。 消费者通常被集成在业务系统中&#xff0c;从 Apache RocketMQ 服务…

钉钉和MySQL接口打通对接实战

钉钉和MySQL接口打通对接实战 对接系统钉钉 钉钉&#xff08;DingTalk&#xff09;是阿里巴巴集团专为中国企业打造的免费沟通和协同的多端平台&#xff0c;提供PC版&#xff0c;Web版和手机版&#xff0c;有考勤打卡、签到、审批、日志、公告、钉盘、钉邮等强大功能。 目标系统…

docker基础5——数据存储卷

文章目录 一、基本了解二、存储卷2.1 docker挂载卷2.2 绑定挂载卷2.3 设置容器挂在卷权限 三、数据卷容器四、数据卷容器迁移数据 一、基本了解 为什么会有存储卷&#xff1f; Docker镜像由多个只读层叠加而成&#xff0c;启动容器时&#xff0c;Docker会加载只读镜像层并在镜像…

【杂谈理解】STM32定时器启动模式

STM32定时器启动方式 前言 事情的起因本来是探究为什么在中断模式下的回调中函数中&#xff0c;我不小心加了延时函数为什么会导致崩溃&#xff0c;很遗憾啊&#xff0c;没看出来&#xff0c;不过需要在中断事件中延时的话&#xff0c;倒是可以用轮询模式下的配置。本文探究HA…

Aurix TC3xx系列MCU ADC采集时间计算方法(四)

文章目录 1 前言2 各阶段时间的计算方法2.1 计算公式2.2 采样阶段2.3 转换阶段2.4 降噪阶段2.5 校准阶段3 采集时间示例>>返回总目录<< 1 前言 在项目开发前期评估阶段,会比较关注ADC的采集时间,我们可以给出一个大概的采样的时间0.5us~1.2us左右,但是对于精确…

Python爬虫-贝壳二手房

前言 本文是该专栏的第3篇,后面会持续分享python爬虫案例干货,记得关注。 本文以某二手房网为例,如下图所示,采集对应城市的二手房源数据。具体思路和方法跟着笔者直接往下看正文详细内容。(附带完整代码) 正文 地址:aHR0cHM6Ly9zei5rZS5jb20vZXJzaG91ZmFuZy8= 目标:…

代理模式(java)

目录 结构 静态代理案例 代码实现 售票类 火车站类 代理类 测试类 优缺点 优点 缺点 结构 代理&#xff08;Proxy&#xff09;模式分为三种角色&#xff1a; 抽象主题&#xff08;Subject&#xff09;类&#xff1a; 通过接口或抽象类声明真实主题和代理对象实现的业务…

git cherry-pick 的使用

cherry-pick 精心挑选的意思&#xff0c;即可以从一个分支上挑选一个&#xff08;或多个&#xff09;修改&#xff0c;提交到当前分支上&#xff0c;不过 cherry-pick 只能是本地操作&#xff0c;即源分支上必须有的commit 才能 cherry-pick。遇到的情况可能是&#xff0c;源分…

JMeter的使用(2)

JMeter生成测试报告使用的是Ant(Maven)构建工具来生成HTML的测试报告。 ant执行的条件是需要有build.xml的文件的&#xff0c;build.xml文件里面主要编写三个内容&#xff1a; 1、定义了被执行的测试脚本 2、定义了测试报告的目录 3、定义了自动发送邮件 HTTP COOKIE管理器&am…

cgo调用,高效快速稳定,无内存碰撞

一、背景 因为密码学有很多较快的算法是基于c或c纂修&#xff0c;而工程上主要以go语言为主&#xff0c;所以在此梳理一些go调用c常见问题和用例。 有很多奇特的方式进行传输&#xff0c;但是想要性能最优还是以指针传输作为主要传输方式。 一些简单的计算可以直接使用c编写…

Python中数据和JSON互相转换

什么是json JSON是一种轻量级的数据交互格式。可以按照JSON指定的格式去组织和封装数据 。JSON本质上是一个带有特定格式的字符串主要功能&#xff1a;json就是一种在各个编程语言中流通的数据格式&#xff0c;负责不同编程语言中的数据传递和交互. 类似于&#xff1a; 国际通…

Apache Struts2漏洞复现之s2-001漏洞复现

0x01 声明&#xff1a; 仅供学习参考使用&#xff0c;请勿用作违法用途&#xff0c;否则后果自负。 0x02 简介&#xff1a; Apache Struts 2是一个用于开发Java EE网络应用程序的开放源代码网页应用程序架构。它利用并延伸了Java ServletAPI&#xff0c;鼓励开发者采用MVC架构…

LeetCode45.Jump-Game-II<跳跃游戏II>

题目&#xff1a; 思路&#xff1a; 从上次大神那里获得的灵感 这题问的是次数,那么我们需要确保 1,能否跳到终点 2,得到次数. 第一次条获得的是nums[0],那么第一个数就是我们第一次能跳跃的范围.每次在范围里获得最大值.并且次数加一.然后进入下一次范围;即可得到次数; 代码…

sql中with as用法/with-as 性能调优/with用法

文章目录 一、概述二、基本语法三、使用场景3.1、定义CTE,并为每列重命名3.2、多次引用/多次定义3.3、with与union all联合使用3.4、with返回多种结果的值3.5、with与insert使用 四、递归查询4.1、语法4.2、使用场景4.2.1、用with递归构造1-10的数据4.2.2、with与insert递归造数…

C++OpenCV(6):图像阈值操作

&#x1f506; 文章首发于我的个人博客&#xff1a;欢迎大佬们来逛逛 &#x1f506; OpenCV项目地址及源代码&#xff1a;点击这里 文章目录 图像阈值化 图像阈值化 阈值又叫临界值&#xff0c;是指一个效应能够产生的最低值或最高值。 例如我们选择的阈值为125&#xff0c;则…

AI课堂教学质量评估系统算法 yolov7

AI课堂教学质量评估系统通过yolov7网络模型框架利用摄像头和人脸识别技术&#xff0c;AI课堂教学质量评估系统实时监测学生的上课表情和课堂行为。同时&#xff0c;还结合语音识别技术和听课专注度分析算法&#xff0c;对学生的听课专注度进行评估&#xff0c;生成教学质量报告…

SQL与NoSQL数据库选型及实际业务场景探讨

在企业系统架构设计中&#xff0c;选择合适的数据库类型是一项关键决策。本文将对比SQL和NoSQL数据库的特点&#xff0c;分析它们在数据模型、可扩展性、一致性与事务、查询复杂性与频率&#xff0c;以及性能与延迟等方面的优势和劣势。同时&#xff0c;结合轻易云数据集成平台…

专项练习-1数据结构-02字符串

1. 下面关于「串」的叙述中&#xff0c;哪一个是不正确的&#xff1f;&#xff08; &#xff09; A 串是字符的有限序列 B 空串是由空格构成的串 C 模式匹配是串的一种重要运算 D 串既可以采用顺序存储&#xff0c;也可以采用链式存储 正确答案&#xff1a;B 官方解析&…