c语言windows.h运行,C语言windows.h有哪些函数?

Windows.h是一个最重要的头文件,它包含了其他Windows头文件,这些头文件的某些也包含了其他头文件。下面我们就来看一下这个头文件中有哪些函数。

cbd1ab0d8625b2b08b60078440bc0410.png

C语言windows.h库的常用函数:

1、FindWindow函数

该函数可以通过窗口类名或者窗口标题名来查找特定窗口句柄,返回值是窗口的句柄(在Windows中,句柄是一个系统内部数据结构的引用。)

函数用法:#include "stdafx.h"

#include

int main() {

HWND window; //定义一个窗口句柄变量,用来储存窗口句柄

/*FindWindow("这里填窗口类名","这里填窗口标题名")

窗口类名和窗口标题名可以只填一个,不填的用NULL填充*/

window = FindWindow(NULL,"文本.txt - 记事本"); //查找标题为"文本.txt - 记事本"的窗口

SendMessage(window,WM_CLOSE,0,0); //向窗口发送关闭指令

return 0;

}

2、SendMessage函数

这个函数的功能是向句柄对应窗口发送指令

函数用法#include "stdafx.h"

#include

int main() {

POINT mouse;

HWND window;

while (1) {

GetCursorPos(&mouse);

window = WindowFromPoint(mouse);

/*SendMessage(窗口句柄,消息类型,消息附带内容,消息附带内容)

比如我这里选定的消息类型是WM_CHAR

消息附带内容为WPARAM('a')

所以消息附带内容就是模拟键盘向窗口输入a*/

SendMessage(window,WM_CHAR,WPARAM('a'),0);

Sleep(100);

}

return 0;

}

3、WindowFromPoint函数

这个函数的功能是通过鼠标点击获得被点击窗口的句柄

函数用法#include "stdafx.h"

#include

int main() {

POINT mouse; //定义一个结构体变量储存鼠标位置

HWND window;

while (1) {

GetCursorPos(&mouse); //获取到当前鼠标位置

/*WindowFromPoint(鼠标位置变量名)*/

window = WindowFromPoint(mouse);

SendMessage(window,WM_CLOSE,0,0);

Sleep(100);

}

return 0;

}

4、GetCursorPos函数

这是一个用于获取鼠标指针位置的函数。#include

#include

#include

int main(){

POINT mouse; //用来储存鼠标的x y坐标

while(1){

GetCursorPos(&mouse); //调用GetCursorPos函数获取坐标值

printf("%d,%d\n",mouse.x,mouse.y);

Sleep(300);

}

return 0;

}

5、SetCursorPos函数

SetCursorPos函数就是用来设置鼠标坐标的函数。函数的用法就是SetCursorPos(x坐标,y坐标)。#include

int main(){

int i;

while(i < 100000){

SetCursorPos(100,100);

i += 1;

}

return 0;

}

6、ShowWindow函数

这个函数用来实现对windows窗口包括最大化最小化隐藏在内的操作,具体用法为ShowWindow(句柄变量名,功能)。#include

#include

#include

int main(){

HWND window;

window = FindWindow(NULL,"新建文本文档.txt - 记事本");

ShowWindow(window,SW_HIDE); //隐藏窗口

Sleep(5000);

ShowWindow(window,SW_MAXIMIZE); //最大化窗口

Sleep(5000);

ShowWindow(window,SW_MINIMIZE); //最小化窗口

Sleep(5000);

ShowWindow(window,SW_RESTORE); //还原窗口

Sleep(5000);

return 0;

}

更多相关知识请关注前端学习网站

  • 5
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Windows.h 是 Windows 操作系统的头文件,其中包含了大量的函数和常量,用于 Windows 应用程序的开发。下面是一些常用的 Windows.h 库函数及其使用例子: 1. MessageBox 函数函数用于显示一个消息框,提示用户执行某些操作或显示一些信息。它的原型如下: ```c int MessageBox( HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType ); ``` 其中,hWnd 为消息框的父窗口句柄,lpText 为消息文本,lpCaption 为消息框的标题,uType 为消息框的类型。下面是一个例子: ```c #include <Windows.h> int main() { MessageBox(NULL, "Hello, World!", "Message", MB_OK); return 0; } ``` 该程序会弹出一个消息框,显示 "Hello, World!",标题为 "Message",并且有一个 OK 按钮。 2. GetWindowText 函数函数用于获取指定窗口的文本内容。它的原型如下: ```c int GetWindowText( HWND hWnd, LPTSTR lpString, int nMaxCount ); ``` 其中,hWnd 为窗口句柄,lpString 为输出缓冲区,nMaxCount 为输出缓冲区的大小。下面是一个例子: ```c #include <Windows.h> #include <stdio.h> int main() { HWND hWnd = GetDesktopWindow(); TCHAR title[256] = { 0 }; GetWindowText(hWnd, title, sizeof(title)); printf("Desktop title: %s\n", title); return 0; } ``` 该程序会获取桌面窗口的标题,并打印出来。 3. CreateWindow 函数函数用于创建一个窗口。它的原型如下: ```c HWND CreateWindow( LPCTSTR lpClassName, LPCTSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam ); ``` 其中,lpClassName 为窗口类名,lpWindowName 为窗口标题,dwStyle 为窗口样式,x 和 y 分别为窗口左上角的坐标,nWidth 和 nHeight 分别为窗口的宽和高,hWndParent 为窗口的父窗口句柄,hMenu 为菜单句柄,hInstance 为当前实例句柄,lpParam 为创建窗口时传递的参数。下面是一个例子: ```c #include <Windows.h> LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { WNDCLASS wc = { 0 }; wc.lpfnWndProc = WndProc; wc.hInstance = hInstance; wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1); wc.lpszClassName = "MyWindowClass"; RegisterClass(&wc); HWND hWnd = CreateWindow( "MyWindowClass", "Hello, World!", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL ); ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); MSG msg = { 0 }; while (GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } return msg.wParam; } LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { switch (message) { case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } return 0; } ``` 该程序会创建一个窗口,并显示 "Hello, World!"。当用户关闭窗口时,程序会退出。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值