首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Vista下查找MDI窗口的玻璃

在Vista下查找MDI窗口的玻璃,可以使用Windows API函数来实现。以下是一个简单的示例代码:

代码语言:c++
复制
#include<windows.h>
#include<iostream>

using namespace std;

BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
{
    DWORD dwPID;
    GetWindowThreadProcessId(hwnd, &dwPID);
    if (dwPID == GetCurrentProcessId())
    {
        HWND hwndParent = GetAncestor(hwnd, GA_PARENT);
        if (hwndParent)
        {
            HWND hwndMDI = GetAncestor(hwndParent, GA_PARENT);
            if (hwndMDI)
            {
                HWND hwndGlass = FindWindowEx(hwndMDI, NULL, L"SHELLDLL_DefView", NULL);
                if (hwndGlass)
                {
                    cout << "找到玻璃窗口:" << hwndGlass<< endl;
                    return FALSE;
                }
            }
        }
    }
    return TRUE;
}

int main()
{
    EnumWindows(EnumWindowsProc, 0);
    return 0;
}

该代码使用EnumWindows函数枚举所有窗口,然后通过GetWindowThreadProcessId函数获取窗口所属进程的进程ID,如果与当前进程的进程ID相同,则获取窗口的父窗口,然后再获取父窗口的父窗口,如果该窗口是MDI窗口,则使用FindWindowEx函数查找SHELLDLL_DefView类的窗口,该窗口就是玻璃窗口。

需要注意的是,该代码只是一个示例,实际使用时可能需要进行修改和优化。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【MFC拓展库】上海道宁与BCGSOFT合作为您带来专业Micrisoft Windows开发业务组件

02、Docking & MDI for UWP一个完整对接工具窗口和多文档界面解决方案用户可以随意拖动和停靠窗口,并保留他们布局自定义包含流行IDE中停靠窗口MDI功能,以及您在其他任何地方都找不到扩展功能旨在完全支持数据绑定和在...默认情况,状态栏和所有突出显示/聚焦元素都是蓝色,但您可以根据自己喜好进行更改(仅限浅色和深色样式)。04、视觉主题该库为应用程序组件提供Microsoft Office 2013外观。...“横向”)或垂直(“纵向”)布局平铺标题和多行文本平铺图像数字和标志性徽章支持“活”瓷砖自定义颜色和画笔自定义瓷砖独立于操作系统:由于我们实现只是模拟 Windows 8 风格 Tiles,您可以在所有支持操作系统使用我们...此外,您可以将任何对话框部分声明为“玻璃”(仅限Vista),该对话框区域将出现“Aero”效果。13、视觉设计仪表可视化设计器允许几分钟内使用新所见即所得设计工具创建高质量数字仪表板!.../2013/2016风格功能区、自动隐藏控制栏、MDI 选项卡、灵活可视化管理器等。

5.5K20

不确定列号情况如何使用Vlookup查找

最近小伙伴收集放假前排班数据 但是收上来数据乱七八糟 长下面这样 但是老板们只想看排班率 所以我们最终做表应该是这样 需要计算出排班率 排班率=排班人数/总人数 合计之外每一个单元格...都需要引用 除了最基础等于=引用 我们还有一种更加万能Vlookup+Match方法 这样无论日期怎么变化 无论日期顺序是否能对上 我们都不用更改公式 例如A部门,2月1日排班率应该这么写 =...B17 单元格为排班率日期 A2:K2 单元格为我们排班人数日期 M2:N8单元格是总人数 其中 分子排班人数公式是 VLOOKUP($A18,$A$1:$K$8,MATCH(B$17...,$A$2:$K$2,0),0) 排班人数里面的日期匹配 我们用Match函数动态确定列号 MATCH(B$17,$A$2:$K$2,0) 分母总人数比较简单 就是常规Vlookup VLOOKUP...部门合计我们需要确定部门行号即可 为防止部门变动 最好也用公式确定行号 这一块 可以有两种写法 一种是用Sum,Offset,Index,Match函数组合 =SUM(OFFSET(INDEX

2.4K10

说说Win7Aero效果

最近看到别人写一个例程,就是把控制台弄成了全透明,我把源码下载下来做了研 究。 其实从Vista版本之后,WindowsAPI里面增加了几个函数,用于Aero效果实现。...DwmIsCompositionEnabled用于检测系统桌面组合功能是否打开。...DwmExtendFrameIntoClientArea用于开启控制窗体玻璃效果,他需要一个名为 MARGINS结构作为参数,表达窗口四周边框。...我们实际上就是要非客户区 边框往内扩展,等到MARGINS足够大之后,就变成全玻璃特效了。 下面是两个实例: 1.c++使控制台变透明 ?...旗舰版等有透明特效是这个样子 ? 2.c#使窗体变透明 这个事先要声明一些东西作为准备 ? 然后构造函数下调用即可 ? 效果 ?

73830

电脑软件:SmartSystemMenu(窗口置顶工具)介绍

四、功能介绍使用方法:SmartSystemMenu使用非常简单,运行后,默认就会显示系统托盘中,不会显示任何界面,当你软件窗口边框上右击,弹出右键菜单中就可以看到SmartSystemMenu...显示一个对话框,其中包含当前窗口和进程信息:窗口句柄、窗口标题、窗口风格、窗口类、进程名称、进程ID、进程路径。卷起. 将当前窗口向上卷起。毛玻璃效果. 将 “毛玻璃效果” 模糊添加到当前窗口。...(仅 Windows Vista 及更高版本支持。主要用于控制台窗口。)窗口置顶. 当前窗口位于所有其他窗口之上。移至最底层. 将当前窗口发送到底部。保存窗口截图. 将当前窗口屏幕截图保存到文件中。...显示一个对话框,其中包含当前窗口和进程信息:窗口句柄、窗口标题、窗口风格、窗口类、进程名称、进程ID、进程路径。卷起. 将当前窗口向上卷起。毛玻璃效果. 将 “毛玻璃效果” 模糊添加到当前窗口。...(仅 Windows Vista 及更高版本支持。主要用于控制台窗口。)窗口置顶. 当前窗口位于所有其他窗口之上。移至最底层. 将当前窗口发送到底部。保存窗口截图. 将当前窗口屏幕截图保存到文件中。

44440

C#学习笔记—— 常用控件说明及其属性、事件

[格式2]: ListBox对象.FindString(s,n); [功能]: ListBox 对象指定列表框中查找字符串 s,查找起始项为n+1,即 n 为开始查找前一项索引。...注意:FindString 方式只是词语部分匹配,即要查找字符串列表项开头,便认为是匹配,如果要精确匹配,即只有列表项与查找字符串完全一致时才认为匹配,可使用FindStringExact方法...MDI程序中应用程序窗口称为父窗口,应用程序内部窗口称为子窗口。虽然 MDI应用程序可以具有多个子窗口, 但是每个子窗口却只能有一个父窗口。此外,处于活动状态窗口最大数目是 1。...一个子窗口功能上可能与父窗口其他子窗口不同,例如,一个子窗口可能用于编辑图像,另一个子窗口可能用于编辑文本,第 3 个子窗口可以使用图形来显示数据,但是所有的窗口都属于相同MDI窗口。...图 10-19 是一个典型 MDI应用程序。外面的窗口是应用程序口,里面的两个小窗口MDI窗口。 2.与 MDI应用程序设计有关属性、方法和事件 常用MDI父窗体属性如下。

9.5K20

python GUI库图形界面开发之PyQt5 MDI(多文档窗口)QMidArea详细使用方法与实例

PyQt5 MDI(多文档窗口)QMidArea简介 一种同时显示多个窗口方法是,创建多个独立窗口,这些独立窗口被称为SDI(Single Document Interface 单文档界面),每个窗口都有自己菜单系统...QMidArea控件通常占据QMainWindow对象中央位置,子窗口在这个区域是QMdiSubWindow类实例,可以设置任何QWidget作为子窗口对象内部控件,子窗口MDI区域进行级联排列布局...setActiveSubWindow() 激活一个子窗口 cascadeSubWindows() 安排子窗口MDI区域级联显示 tileSubWindows() 安装子窗口MDI区域平铺显示 closeActiveSubWindow...,每个Mdi都有标题,窗口内部增加Mdi数量 #子窗口增加一个 MainWindow.count=MainWindow.count+1 #实例化多文档界面对象...()=='Tiled': #tileSubWindow():安排子窗口Mdi区域平铺显示 self.mdi.tileSubWindow() 本文主要讲解了PyQt5 MDI(多文档窗口

3.3K21

华中数控铣床加工中心系统坐标系和刀具表参数该如何设置?

坐标系 MDI 输入坐标系数据操作步骤如下: (1)MDI 功能子菜单按F3 键进入坐标系手动数据输入方式,图形显示窗口首先显示G54坐标系数据,如下图所示: (2)按Pgdn 或Pgup 键,...刀库表 MDI 输入刀库数据操作步骤如下: (1) MDI 功能子菜单按“F1”键,进行刀库设置,图形显示窗口将出现刀库数据,如下图所示: (2) 用上下左右移动蓝色亮条选择要编辑选项;(3)...按Enter 键蓝色亮条所指刀库数据颜色和背景都发生变化,同时有一光标闪烁; (4) 用上下左右键进行编辑修改; (5) 修改完毕,按Enter 键确认; (6) 若输入正确,图形显示窗口相应位置将显示修改过值...刀具表 MDI 输入刀具数据操作步骤如下: (1) MDI 功能子菜单按F2 键进行刀具设置,图形显示窗口将出现刀具数据如下图所示: (2) 用上下左右移动蓝色亮条选择要编辑选项; (3) 按...Enter 键蓝色亮条所指刀具数据颜色和背景都发生变化,同时有一光标闪烁; (4) 用上下左右键进行编辑修改; (5) 修改完毕按Enter 键确认; (6) 若输入正确,图形显示窗口相应位置将显示修改过

1.8K10

网络知识:46张图带你了解网络传输、WIFI、以太网协议和网络寻址

为了避免我们陷入此困境,我们拥有一项成为「Auto MDI-X」 技术,尽管 「Auto MDI-X」 可以支持设备可以检测是否使用了错误线缆,然后,可以再逻辑上切换引脚功能,使其与电缆相匹配,...光纤 光纤 铜缆替代品就是光纤,光纤使用材质是「玻璃束」,使用这种材质,脉冲信号会从「玻璃束」一端通过「玻璃束体」向另一端传递。...需要使用什么类型电缆? 2、使用哪种类型UTP电缆将主机连接到交换机?那种类型电缆可以将一个交换机连接到另一个交换机? 3、哪种情况我们需要使用 Auto MDI-X 技术?...IP寻址并发送信息 所以「MAC地址」通常都用于局部网络中设备查找,而「IP地址」因为由管理员分配,这意味着每个国家,每个地区,每个城市「IP地址」都有具体分配「IP地址段」,这就很方便我们查找了...,当我们想要给一个异国他乡亲友发送信息时,只需要先来确定它「IP地址」所在地区,然后再具体查找设备,这将变得非常容易。

83920

保证相同类型MDI子窗体只会被打开一次方法

本文转载:http://www.cnblogs.com/Ricky81317/archive/2008/09/17/1292443.html 看到论坛中有朋友问,如何可以保证MDI主窗体中,同一类型子窗体只能打开一次...我实现基本思路是: 一般每个子窗体都是继承自Form类型,不同子窗体分别代表不同功能,因此只需要判断当前MDI打开子窗体类型中有没有当前需要打开子窗体类型就行了,如果有,则直接激活,如果没有则创建一个并加到主窗体中...具体实现起来有很多种办法,这里只写出一个利用泛型实现: /// /// 打开MDI窗口并附加到MDI窗口中,如果MDI窗口中已经存在相同类型窗口,则直接激活 /// /// MDI子窗体类型 /// MDI主窗体引用 //.../ 当前创建或得到MDI子窗体类型实例引用 private T OpenUniqueMDIChildWindow(Form mdiParent) where

97610

CC++ Qt MdiArea 多窗体组件应用

MDI多窗体组件,主要用于设计多文档界面应用程序,该组件具备有多种窗体展示风格,其实现了父窗体中内嵌多种子窗体功能,使用MDI组件需要在UI界面中增加mdiArea控件容器,我们所有的窗体创建与操作都在这个容器内进行...,toolBar中增加相应菜单栏,并在主窗体中放入mdiArea容器组件。...图片窗体中顶部菜单栏,我们需要手动定义一他们所具备功能名称等。...MDI formDoc->show(); //单独窗口中显示}// 关闭全部void MainWindow::on_actionClose_triggered(){ ui->mdiArea...->closeAllSubWindows(); //关闭所有子窗口}代码运行效果如下:图片当用户点击MDI模式时,我们则执行以下代码,将所有已存在窗体合并为一个类似于TabWidget窗体组件。

1K40

VB 子窗体被PictureBox控件挡住无法显示

1、问题描述     VB做机房收费系统时候,用MDI主窗体,主窗体上加了一个Picturebox控件,运行时候,点了子窗体,但是却没有出现,后来才发现,子窗体被Picturebox控件给当在了后面...2、问题原因    MDI程序中,子窗体实际位于MDIClient里,就是说,子窗体父窗体是MDIClient,而PictureBox和MDIClient属于同一级    层次结构    ThunderMDIForm-MDIForm1...参数:    hWndChild:子窗口句柄。hWndNewParent:新窗口句柄。如果该参数是NULL,则桌面窗口就成为新窗口。    ...返回值:    如果函数成功,返回值为子窗口原父窗口句柄;如果函数失败,返回值为NULL。...,frmMain窗体不可以是MDI窗体,要用一般Form窗体,否则的话,当你运行时候,它会提醒你——“实时错误426”,只允许一个MDI窗体。

1.3K20

CC++ Qt MdiArea 多窗体组件应用

MDI多窗体组件,主要用于设计多文档界面应用程序,该组件具备有多种窗体展示风格,其实现了父窗体中内嵌多种子窗体功能,使用MDI组件需要在UI界面中增加mdiArea控件容器,我们所有的窗体创建与操作都在这个容器内进行...,toolBar中增加相应菜单栏,并在主窗体中放入mdiArea容器组件。...窗体中顶部菜单栏,我们需要手动定义一他们所具备功能名称等。...MDI formDoc->show(); //单独窗口中显示 } // 关闭全部 void MainWindow::on_actionClose_triggered() { ui->...mdiArea->closeAllSubWindows(); //关闭所有子窗口 } 代码运行效果如下: 当用户点击MDI模式时,我们则执行以下代码,将所有已存在窗体合并为一个类似于TabWidget

98020

CAD有可能窗口组织

现在图纸比较工具都用预览功能,但是现在基于acad二次开发专业软件多了,不定什么时候即就搞得acad崩溃,就算是autodesk自己实例程序blockview也一样,没办法,先预一个双窗体功能,如果需要的话可以让它们进行比较...注意:随着版本升级,CAD有可能窗口组织方式会变化,要结合Spy++等工具查看cad窗体结构和窗体信息,并且灵活运用VC断点调试查看FindWindowEx函数是否捕捉到了正确窗体句柄,才能保证代码正常工作...111 RECT rect; ::GetClientRect(acedGetAcadFrame()->m_hWndMDIClient,&rect); //获取MDI区域大小 CWnd * pMdi=...acedGetAcadFrame()->FindWindowEx(acedGetAcadFrame()->m_hWnd,NULL,_T("MDIClient"),NULL); //获取MDI区域窗体句柄...HWND h_pSub1=::FindWindowEx(pMdi->m_hWnd,NULL,NULL,_T("Drawing1.dwg")); //根据需要修改要查找窗体标题,打开图纸往往标题里包含文件名

11320

windows mongodb 连接,备份,还原远程服务器上数据库(cmd命令窗口实现)

Windows远程连接服务器上MongoDB数据库 使用是mongo命令,如果安装mongodb时配置了环境变量,可以直接快捷键windows+R打开cmd。...管理员身份cmd执行如下语句:      mongo -h ip:端口/数据库名 -u user -p password 需要服务器ip和端口,要连接数据库名,并指定其用户名和密码,即可连接到指定...Windows备份远程服务器上数据库到本机 同样,cmd运行如下命令: mongodump -h ip -u user -p password  -d 要备份数据库名 -o 备份到哪个路径 如下图...将备份数据库还原到本地mongodb实例 备份成功后会得到数据库文件夹,其中文件格式是json和bson两种,通过mongorestore 命令进行还原: mongorestore -d 新数据库名称...打开mongodb compass 客户端连接后可以看到新增了一个名为newtest数据库,或者cmd中通过show dbs 查看数据库列表。

4.1K30

写字板(Windows程序设计)

、修饰等,均有相应菜单来控制,常用菜单项配备相应工具栏按钮(可参照Windows自带写字板) 按需添加其他代码,如窗口布局等; 实现自定义查找对话框,有能力同学可进一步实现替换/全文替换等功能...状态栏中显示学生学号、姓名等信息,在窗口标题中显示当前正在编辑文件名 (可选)其他你觉得实用功能:如支持word等 (可选)将其改造成MDI程序:父窗口中包含新建、窗口、帮助等菜单;在运行时,子窗口菜单会与其合并...,合理设置各菜单项MergeIndex/MergeAction属性,使其符合我们使用习惯;编程允许用户调整各自窗口布局关系(平铺、层叠等)等 先看效果 解决方法 richtextbox...  这是一个MDI调整子窗体使用DropDownItemClicked例子,高效优雅 = v = private void 窗口WToolStripMenuItem_DropDownItemClicked...使用,是为了让一个父窗体拥有许多个子窗体,进行更加简单有效操作 父窗体new子窗体就行,记得一系列基本操作,你也可以通过生成函数和属性进行快速高效设置 private void 新建ToolStripMenuItem_Click

1K10

46张图带你了解线缆、WIFI、以太网协议和网络寻址

为了避免我们陷入此困境,我们拥有一项成为「Auto MDI-X」 技术,尽管 「Auto MDI-X」 可以支持设备可以检测是否使用了错误线缆,然后,可以再逻辑上切换引脚功能,使其与电缆相匹配,...光纤 铜缆替代品就是光纤,光纤使用材质是「玻璃束」,使用这种材质,脉冲信号会从「玻璃束」一端通过「玻璃束体」向另一端传递。...需要使用什么类型电缆? 2、使用哪种类型UTP电缆将主机连接到交换机?那种类型电缆可以将一个交换机连接到另一个交换机? 3、哪种情况我们需要使用 Auto MDI-X 技术?...IP寻址并发送信息 所以「MAC地址」通常都用于局部网络中设备查找,而「IP地址」因为由管理员分配,这意味着每个国家,每个地区,每个城市「IP地址」都有具体分配「IP地址段」,这就很方便我们查找了...,当我们想要给一个异国他乡亲友发送信息时,只需要先来确定它「IP地址」所在地区,然后再具体查找设备,这将变得非常容易。

92641
领券