社区
C#
帖子详情
如何判断mdi主窗体在桌面是否被其他窗体全部遮挡和部分遮挡?
752
2006-08-07 05:43:14
rt
...全文
254
12
打赏
收藏
如何判断mdi主窗体在桌面是否被其他窗体全部遮挡和部分遮挡?
rt
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
752
2006-08-08
打赏
举报
回复
对啊,我将一个窗体先遮住主窗体的大部分,然后向下移动以扩大他的显示区域从而触发paint事件,但是在他的paint中的剪切区域都为0
Knight94
2006-08-08
打赏
举报
回复
to paint中的代码原来试想通过剪切区域来判断是否最小化的,无奈主从窗体都为0。
这是当然,窗体被遮并不会触发paint事件。
752
2006-08-07
打赏
举报
回复
paint中的代码原来试想通过剪切区域来判断是否最小化的,无奈主从窗体都为0。
项目已经大半了,即使是三方控件的问题现在也来不及换了,所以才想出最小化这么个办法。
Knight94
2006-08-07
打赏
举报
回复
to 系统中用了一些第三方控件,其他控件已经尽可能优化了,刚启动就用了30多M。
单独写个小程序,使用这个控件,做几个简单操作,看看吃内存的是否是它。
Knight94
2006-08-07
打赏
举报
回复
to paint中没有做任何事情,是想要判断是否被遮挡的情况下加了一些测试代码。
被遮挡不会触发paint,移开才会触发。
752
2006-08-07
打赏
举报
回复
系统中用了一些第三方控件,其他控件已经尽可能优化了,刚启动就用了30多M。
paint中没有做任何事情,是想要判断是否被遮挡的情况下加了一些测试代码。
Knight94
2006-08-07
打赏
举报
回复
to 运行不久后都上100M了(768m的内存),该collect()的地方都加了,有点效果,但内存上去了就不下来或者是进2退1,实在没法,想在主窗体完全被遮挡时最小化。
虽然这是不得已的方法,但是效果非常明显,主要是在任务管理器中的数字真是天壤之别
最小化能降低内存?
那你在窗体上做了什么操作,例如paint之类的事件,或者你窗体上什么control做了哪些操作,这么吃资源。
最好能找到吃内存的原因,从根本上解决可能效果更好。
752
2006-08-07
打赏
举报
回复
to:lookfeng()
不管是主窗体还是子窗体的paint中参数e的rect都为0
752
2006-08-07
打赏
举报
回复
to:Knight94(愚翁)
谢谢您的关注!系统现在吃内存吃得厉害,运行不久后都上100M了(768m的内存),该collect()的地方都加了,有点效果,但内存上去了就不下来或者是进2退1,实在没法,想在主窗体完全被遮挡时最小化。
虽然这是不得已的方法,但是效果非常明显,主要是在任务管理器中的数字真是天壤之别。虽然这些数字不是完全真实,但是客户不这么想啊!
lookfeng
2006-08-07
打赏
举报
回复
在窗体Paint事件里判断
e.Graphic的剪切区域是否等于窗体客户区域
Knight94
2006-08-07
打赏
举报
回复
说说你要做什么
牛人
2006-08-07
打赏
举报
回复
路过。。支持一下
【爱码农】C#制作
MDI
文本编辑器
本教程完整讲解了使用C#编程语言开发《
MDI
文本编辑器》(
MDI
记事本)程序的完整过程。本视频教程非PPT录播方式,而是现场界面搭建、代码输入,充分模仿了一个初学者的学习过程。在代码编程过程中的常见错误都直接以实例方式进行调试解决。整个项目由浅入深、层层深入,最终一气呵成!整个教程分成三个块面:①单
窗体
的记事本程序设计②查找/替换
窗体
程序设计③
MDI
记事本程序
窗体
设计
MDI
窗体
与子
窗体
的显示问题--(如何让
主
窗体
是被控件挡住的子
窗体
显示)
机房收费系统热火朝天的进行着,于此同时问题也是毫不留情的就来了,在
MDI
窗体
中添加了picture控件后,子
窗体
不能显示就是我遇到的第一个问题。刚刚着手做系统遇到这样的问题,挺棘手的,当时在网上查过很多的资料,也没找到。今天在这里分享分享我解决这个问题的经验 经验一:这个办法用起来虽说子
窗体
显示了,但是我个人觉得有点偷懒。 子
窗体
不能显示出来,那是因为被pi
在
MDI
窗体
调用子
窗体
时怎样使不被
MDI
窗体
上的图片挡住
最近大家都在忙着敲机房收费系统,我也一样。前几天发现了一个问题,在点击
主
窗体
上的按钮调用子
窗体
时,子
窗体
不显示。开始时以为是我把子
窗体
的名字敲错了导致无法调用,后来在仔细核对下排除了这种可能。那么为什么和敲学生时一样的步骤现在却出现了这个问题呢?通过在网上查和问同学发现很多同学都遇到了这个问题,也有同学已经解决了。这里就在来说说如何解决,权当强调了吧。 首先出现这个问题是因为我们的
MDI
C# Winform
MDI
窗体
,父
窗体
控件覆盖子
窗体
的解决办法
问题:
MDI
窗体
中,父
窗体
控件会覆盖子
窗体
,网上很多解决方案表面上解决了问题,但失去了
MDI
窗体
的基本特性,并不实用。比较赞成使用子
窗体
“代替”父
窗体
控件的方案。思路:不将控件放置在父
窗体
上,而是放在一个普通的子
窗体
上面,但其基本表现与将控件放在父
窗体
中一致。 这是表现指: 大小随着
主
窗体
变化,覆盖整个客户区 不能被关闭、最小化等,一直处于填充整个客户区的状态 实现:子
窗体
代码中禁用最大化、最小化
【C#】
MDI
窗体
中,将子
窗体
置于父
窗体
控件之上的方法
问题 这几天在优化程序的时候发现了一个问题,就是在
MDI
窗体
中的子
窗体
被激活显示出来之后,总是被
主
窗体
中的控件
遮挡
(各种控件)。解决的方法也试了很多但是都不是很满意,由于C#的WINFROM
窗体
没有SETPARENT的方法,所以很多东西都需要自己去编写,下面就贴一个至少让我感觉非常不错的方法吧。 解决办法 user32.dll 首先来介绍一下什么是“User32.dll” 欢
C#
110,533
社区成员
642,574
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章