C语言实现控制台窗口隐藏
简述
通过以下两个函数来实现窗口的隐藏效果。不仅仅只用于控制台窗口,其他的也可以。(代码在底部)
FindWindow函数
功能
FindWindow函数的功能是获取一个顶层窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。另外,这个函数不查找子窗口,而且在查找时不区分大小写
函数原型
头文件是windows.h
HWND FindWindow(LPCTSTR IpClassName,LPCTSTR IpWindowName);
参数
- IpClassName
指向一个以NULL字符结尾的、用来指定类名的字符串,或一个可以确定类名字符串的原子。如果这个参数是一个原子,那么它必须是一个在调用此函数前已经通过GlobalAddAtom函数创建好的全局原子。这个原子(一个16bit的值),必须被放置在lpClassName的低位字节中,lpClassName的高位字节置零。可以简单的理解为窗口的类名
如果该参数为NULL时,将会寻找任何与lpWindowName参数匹配的窗口。 - Ipwindowname
指向一个以NULL字符结尾的、用来指定窗口名(即窗口标题)的字符串。如果此参数为NULL,则匹配所有窗口名。
注:在搜索的时候两个参数不一定都要知道,但至少知道其一。
返回值
如果函数执行成功,则返回值是拥有指定窗口类名或窗口名的窗口的句柄。否则返回值为 NULL 。
ShowWindow函数
功能
设置指定窗口的显示状态。
函数原型
头文件是windows.h
BOOL ShowWindow(HWND hWnd, int nCmdShow)
参数
hWnd
指定窗口的句柄nCmdShow
指示窗口如何显示。如果发送应用程序的程序提供了STARTUPINFO结构,则应用程序第一次调用ShowWindow时该参数被忽略。否则,在第一次调用ShowWindow函数时,该值应为在函数WinMain中nCmdShow参数。
该参数可以是下表之一
代号 | 含义 | nCmdShow值 |
---|---|---|
SW_HIDE | 隐藏窗口并激活其他窗口 | 0 |
SW_MAXIMIZE | 最大化指定窗口 | 3 |
SW_MINIMIZE | 最小化指定窗口 | 6 |
SW_RESTORE | 激活并限制窗口,如果窗口最大化或最小化,则系统将窗口恢复到原来的尺寸和位置。在恢复最小化窗口时,应用程序应该指定这个标志 | 9 |
SW_SHOW | 在窗口原来的位置以原来的尺寸激活和显示窗口 | 5 |
SW_SHOWDEFAULT | 以STARTUPINFO结构中指定的SW_FLAG标志设定显示状态 | 10 |
SW_SHOWMINIMIZED | 激活窗口并将其最小化 | 2 |
SW_SHOWMAXIMIZED | 激活窗口并将其最大化 | 3 |
SW_SHOWMINNOACTIVE | 窗口最小化,激活窗口仍然维持激活状态 | 7 |
SW_SHOWNA | 以窗口原来的状态显示窗口。激活窗口仍然维持激活状态 | 8 |
SW_SHOWNOACTIVATE | 以窗口最近一次的大小和状态显示窗口。激活窗口仍然维持激活状态 | 4 |
SW_SHOWNORMAL | 激活并显示一个窗口。如果窗口被最小化或最大化,系统将其恢复到原来的尺寸和大小。应用程序在第一次显示窗口的时候应该指定此标志 | 1 |
返回值
如果窗口之前可见,则返回值为非零。如果窗口之前被隐藏,则返回值为零。
示例
#include<windows.h>
int main()
{HWND hwnd;hwnd=FindWindow("ConsoleWindowClass",NULL); if(hwnd){ShowWindow(hwnd,SW_HIDE);//设置指定窗口的显示状态}MessageBox(NULL,"控制台已隐藏","提示",MB_OK);system("pause");return 0;
}
小提示:控制台的窗口被隐藏了,就得在任务管理器里面把它关掉,不然就不能再次运行了
C语言实现控制台窗口隐藏相关推荐
- 【C语言】控制台窗口图形界面编程(一)句柄和文本属性
00. 目录 文章目录 00. 目录 01. 句柄 02. GetStdHandle函数 03. CloseHandle函数 04. SetConsoleTextAttribute函数 05. 十进制 ...
- 【C语言】控制台窗口图形界面编程(三)窗口相关设置
00. 目录 文章目录 00. 目录 01. GetConsoleTitle函数 02. SetConsoleTitle函数 03. SetConsoleScreenBufferSize函数 04. ...
- 【C语言】控制台窗口图形界面编程(二)窗口信息和填充缓冲区
00. 目录 文章目录 00. 目录 01. COORD结构体 02. SMALL_RECT结构 03. CONSOLE_SCREEN_BUFFER_INFO结构体 04. GetConsoleScr ...
- 【C语言】控制台窗口图形界面编程(五):文本移动
00. 目录 文章目录 00. 目录 01. CHAR_INFO结构 02. ScrollConsoleScreenBuffer函数 03. 程序示例 04. 官方参考程序 01. CHAR_INFO ...
- 【C语言】控制台窗口图形界面编程(四):文本输出
00. 目录 文章目录 00. 目录 01. FillConsoleOutputAttribute函数 02. FillConsoleOutputCharacter函数 03. WriteConsol ...
- 游标式屏幕菜单c语言,【C语言】控制台窗口图形界面编程(六):光标设置
00. 目录 01. CONSOLE_CURSOR_INFO结构 包含有关控制台光标的信息. typedef struct _CONSOLE_CURSOR_INFO { DWORD dwSize; B ...
- 【C语言】控制台窗口图形界面编程(七):鼠标事件
00. 目录 文章目录 00. 目录 01. INPUT_RECORD结构 02. MOUSE_EVENT_RECORD结构 03. ReadConsoleInput函数 04. 示例程序 01. I ...
- 【C语言】控制台窗口图形界面编程(六):光标设置
00. 目录 文章目录 00. 目录 01. CONSOLE_CURSOR_INFO结构 02. GetConsoleCursorInfo函数 03. SetConsoleCursorInfo函数 0 ...
- 【C语言】控制台窗口图形界面编程(八):键盘事件
00. 目录 文章目录 00. 目录 01. INPUT_RECORD结构 02. KEY_EVENT_RECORD结构 03. ReadConsoleInput函数 04. 示例程序 01. INP ...
- 深入浅出CChart 每日一课——快乐高四第四十九课 旧石器时代,老血狂喷之控制台窗口绘图
前面快乐高四第三十三课,介绍了在控制台程序中怎么利用CChart绘制曲线,那里的方法呢,很简单,就是创建一个弹出窗口,然后在这个弹出窗口上绘图,其实技术含量比较低. 这一课呢,笨笨想给大家介绍一下怎么 ...
最新文章
- java 类加载过程
- python应用html模板,Flask框架如何使用HTML模板
- 捍卫者usb管理控制系统_捍卫Java
- html分类页面,CSS网页设计 把HTML标记分类
- 主板检测卡c5_电脑开机停在主板logo
- java检测敏感词,Java实现敏感词检测的代码
- 133道Java面试题及答案(面试必看)
- ubuntu16服务器vnc无显示器,Ubuntu 18.04 解决无显示器无法vnc远程连接的问题 虚拟显示器 dummy video...
- 引物设计-Primer6.0
- linux只能单向ping通,两机只能单向Ping通的原因、ping的原理
- 最新全志超清4K视频编解码芯片-V316处理器
- oracle12c启动ODM,Oracle 12c impdp 导入ORA-17500: ODM err:Communication error on send 错误处理方法...
- L1-078吉老师的回归
- JAVA计算机毕业设计远程教育系统Mybatis+系统+数据库+调试部署
- 华为虚拟服务器忘记密码,华为云服务器忘记密码了怎么办
- Jquery制作手风琴 -- 案例
- 干货|以太坊全景介绍及入门学习路径(分享实录)
- 使用云效 修改 layui 环境变量
- 云服务器租金注意事项,租用服务器时的5个注意事项
- 淘宝客推广的优势 推广作用提高销量、转化率、测图测款
热门文章
- centos 7下搭建wiki系统
- PHP利用JWT实现token和refresh_token
- SpringCloud ——@RefreshScope
- 转帖 美国 工程索引 收录中国科技论文的最新规定
- solidworks验证许可闪退_彻底解决SolidWorks“无法获得下列许可 SOLIDWORKS Standard”的激活错误...
- JS基础知识点大汇总
- python的pyc反编译
- 多源数据融合:大数据分析的瓶颈
- windows中如何识别RTL8111B/8111C/8111D/8111E/8111F网卡 转自网络
- java打印两个小人_Swing多线程实现奔跑的小人动画代码实现 | 彬菌