MDI窗体与子窗体的显示问题--(如何让主窗体是被控件挡住的子窗体显示)
机房收费系统热火朝天的进行着,于此同时问题也是毫不留情的就来了,在MDI窗体中添加了picture控件后,子窗体不能显示就是我遇到的第一个问题。刚刚着手做系统遇到这样的问题,挺棘手的,当时在网上查过很多的资料,也没找到。今天在这里分享分享我解决这个问题的经验
经验一:这个办法用起来虽说子窗体显示了,但是我个人觉得有点偷懒。
子窗体不能显示出来,那是因为被picture控件给挡住了,那么怎么让它到前面来呢,我就想到了隐藏picture控件,于是在我需要显示其他窗体的时候,我就把picture隐藏,这样子窗体就出来了,然后在我关闭子窗体的时候,我在显示picture控件 。但这样做却有很多弊端,显示子窗体的时候,我就看不到主窗体上的内容了。于是我不得不找其他的办法 从根本上解决这个问题
经验二 :经过查找,我发现可以利用API函数来解决这个问题(结果是显而易见的,很有效)
所需要的API函数 :SetParen
具体做法:1. 首先我们要在相应的模块中声明这个函数,在VB6.0的API浏览器里面就可以找到这段声明的代码
Public Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
2.写好声明后就是应用的部分了,当我们单机MDI窗体上的菜单想要显示另一个子窗体时,我们在单机菜单的Click 事件中
按如下格式:SetParent frmInquireStudent.hWnd,frmMain.hWnd (这里我以我自己的代码为例子)
3. 格式:setParent 你要显示的子窗体名称.hWnd, MDI窗体(即你的MDI窗体名称).hWnd
4. 按照上面的三个步骤写好后,子窗体是显示了,但是显示的是和MDI主窗体一样大的一个边框,只有点击最大化时,才能全看到,这时我们九需要改变一下窗体的大小,在加载窗体时,用相应的代码来确定子窗体的大小 例如:
Me.Width = 数字
Me.Height= 数字
具体数字就很据自己的需要设定了 ,这样窗体就可以显示了。
既看到了子窗体,又看到了主窗体上的内容 ,感觉真是不错 !
在此也顺便写一下 SetParent 这个API 函数的用法
SetParent是一个API函数,它的作用是为一个物体指定一个新的父窗体。(父窗体严格来说应该是容器).也就是把一个物体转到另一个物体上去
Setparent
语法是:
Setparent 物体句柄,目标句柄
发现问题并解决问题,听起来似乎很煎熬,但身在其中的我却感觉到这是个享受的过程。每天都能收获新的知识,我想这些也在慢慢的充实着我,改变着我,并且会带给我巨大的财富吧。
MDI窗体与子窗体的显示问题--(如何让主窗体是被控件挡住的子窗体显示)相关推荐
- WPF获取当前用户控件的父级窗体
方式一.通过当前控件名获取父级窗体Window targetWindow = Window.GetWindow(button);方式二.通过当前控件获取父级窗体Window parentWindow ...
- 使用button控件更改C#From窗体背景
使用button控件更改C#From窗体背景 // // // // 在网上找了很多资料比如 this.BackgroundImage = Image.FromFile(@"图片路径&quo ...
- Scroll View 控件以Thumbnail的方式显示一个目录的全部图片,相似图片浏览器
MAC : XCode -> Scroll View 控件以Thumbnail的方式显示一个目录的全部图片,类似图片浏览器 STEP1:将两个目录复制到project里面ImageBrowser ...
- qt中QHBoxLayout或QVBoxLayout布局内控件的动态生成与显示
---恢复内容开始--- qt中QHBoxLayout或QVBoxLayout布局内控件的动态生成与显示 打个比方,我现在写个小例子,这个小例子是这样的,整个界面分为俩个部分,分为上半部分和下半部分, ...
- html只能选择年月,EasyUi日期控件datebox设置,只显示年月,也只能选择年月
EasyUi日期控件datebox设置,只显示年月,也只能选择年月 1.input 代码 年月 1 2 3 4 5 6 7 8 2.设置只显示年月,只能选持年月: $(function() { $(' ...
- 关于duilib CComboUI控件下拉框 字体显示 与xml 设置不相符的问题
duilib的下拉列表框的字体无法通过itemfont自定义 关于duilib CComboUI控件下拉框 字体显示 与xml 设置不相符的问题 解决办法: 添加链接描述 在设置全局字体属性时,设置字 ...
- 16、控件使用之图标动画显示和图片动画显示
控件使用之图标动画显示和图片动画显示 1.用到的控件 2.添加控件 2.1.添加[动画图标显示]控件 2.2.添加[增量调节]控件 2.3.添加[动画图片显示]控件 3.保存工程及生成文件 4.下载文 ...
- 15、控件使用之艺术字变量显示
控件使用之艺术字变量显示 1.用到的控件 2.需要准备艺术字图标 3.添加控件 3.1.添加[数据变量显示]控件 3.2.添加[增量调节]控件 3.3.添加[艺术字变量显示]控件 4.保存工程及生成文 ...
- Cocos2dx中Scrollview控件滑动与其子控件监听冲突的解决方案(不改底层、最优)
语言环境: Cocos2dx 3.6 Lua 5.1 UI编辑器:Cocos Studio v2.0.6 问题:Scrollview控件滑动与其子控件监听发生冲突. 在点击子控件时,若在子控件上进行移 ...
最新文章
- 洛谷——P1014 Cantor表
- Live2009各产品(如MSN)强迫升级时Server2003系统失败的解决办法
- Ubuntu中的root权限
- 博文强识|进阶企业大咖
- php 访问类的属性,PHP OOP如何访问类的父属性范围解析运算符(::)?
- 开源三维地球Cesium中如何离线加载卫星影像和高程DEM数据
- 数据科学库(六)pandas中的时间序列
- hadoop is not in the sudoers file. This incident will be reported.问题解决
- 自然语言处理——谷歌BERT模型深度解析
- 濒死状态下的静息态网络激活和功能连接
- Generalized Function Pointers
- windows server 2016 开启多用户登陆
- Go panic的学习
- 鸿蒙系统比安卓快,华为自研的鸿蒙系统比安卓快60%
- C++在linux环境下获取毫秒、微妙级别时间
- On children
- java交错数组,C#交错数组用法实例
- 上海大学计算机学院 教授名录,教授名录
- LINUX从零开始——ENGINEER(云计算应用管理)——Day2 [磁盘空间管理、交换空间、VDO]
- 在ios桌面添加web站点图标及增加启动画面
热门文章
- 定时器(setTimeout()和setInterval())的清除问题
- 数据库作业:第七章: 数据库设计
- JavaScript流程控制-循环(循环(for 循环,双重 for 循环,while 循环,do while 循环,continue break))
- 组播IGMP-原理介绍+报文分析+配置示例
- 微信的QQ邮箱助手不提醒,怎么解决?
- JSON 的文档数据库 RedisJson 介绍
- Hacking 开心网(虚拟朋友) with Mechanize
- 视觉测量时的工业相机和远心镜头选型方法
- 智能驾驶安全专题 | 功能安全与SOTIF如何融合实施
- JWT 生成Token、解析Token的简单工具类