ホームページ  >  記事  >  バックエンド開発  >  windows.hにはどのような機能があるのでしょうか?

windows.hにはどのような機能があるのでしょうか?

藏色散人
藏色散人オリジナル
2020-11-16 10:28:4517243ブラウズ

windows.h 関数には次のものが含まれます: 1. ウィンドウ クラス名またはウィンドウ タイトル名を通じて特定のウィンドウ ハンドルを見つけることができる FindWindow 関数; 2. ハンドルに対応するウィンドウに命令を送信するために使用される SendMessage 関数; 3. WindowFromPoint 関数など。

windows.hにはどのような機能があるのでしょうか?

推奨事項: 「c ビデオ チュートリアル

C 言語の windows.h ライブラリでよく使用される関数

1: FindWindow 関数

この関数は、ウィンドウ クラス名またはウィンドウ タイトル名を通じて特定のウィンドウ ハンドルを検索できます。戻り値はウィンドウのハンドルです (Windows では、ハンドルは内部データ構造へのシステム参照です。たとえば、ウィンドウまたは Delphi フォームを操作すると、システムはウィンドウへのハンドルを与え、「ウィンドウ番号を操作している」と通知します。 142 とすると、アプリケーションはシステムにウィンドウ 142 に対する操作 (ウィンドウの移動、ウィンドウ サイズの変更、ウィンドウの最小化など) を実行するように要求できます。実際、多くの Windows API 関数は、次のようなハンドルを最初のパラメーターとして受け取ります。 GDI (グラフィックス デバイス インターフェイス) ハンドル、メニュー ハンドル、インスタンス ハンドル、ビットマップ ハンドルなどは、ウィンドウ関数に限定されません、つまり、ハンドルは、システムによって制御される特別な要素を参照できる内部コードです。 、ウィンドウ、ビットマップ、アイコン、メモリ ブロック、カーソル、フォント、メニューなど)

関数の使用法

#include "stdafx.h"
#include<windows.h>
int main() {
    HWND window;    //定义一个窗口句柄变量,用来储存窗口句柄
    /*FindWindow("这里填窗口类名","这里填窗口标题名")
    窗口类名和窗口标题名可以只填一个,不填的用NULL填充*/
    window = FindWindow(NULL,"文本.txt - 记事本");  //查找标题为"文本.txt - 记事本"的窗口
    SendMessage(window,WM_CLOSE,0,0);              //向窗口发送关闭指令
    return 0;
}

2: SendMessage 関数

SendMessage 関数には、この関数の機能 この関数は、ハンドルに対応するウィンドウに指示を送信することです

関数の使用法

#include "stdafx.h"
#include<windows.h>
int main() {
    POINT mouse;
    HWND window;
    while (1) {
        GetCursorPos(&mouse);
        window = WindowFromPoint(mouse);
        /*SendMessage(窗口句柄,消息类型,消息附带内容,消息附带内容)
        比如我这里选定的消息类型是WM_CHAR
        消息附带内容为WPARAM(&#39;a&#39;)
        所以消息附带内容就是模拟键盘向窗口输入a*/
        SendMessage(window,WM_CHAR,WPARAM(&#39;a&#39;),0);
        Sleep(100);
    }
    return 0;
}

3: WindowFromPoint 関数

2 番目の例では、WindowFromPoint という関数を使用します。この関数は、マウスのクリックを通じてクリックされたウィンドウのハンドルを取得することです

関数の使用法

#include "stdafx.h"
#include<windows.h>
int main() {
    POINT mouse;        //定义一个结构体变量储存鼠标位置
    HWND window;
    while (1) {
        GetCursorPos(&mouse);   //获取到当前鼠标位置
        /*WindowFromPoint(鼠标位置变量名)*/
        window = WindowFromPoint(mouse);
        SendMessage(window,WM_CLOSE,0,0);
        Sleep(100);
    }
    return 0;
}

以上がwindows.hにはどのような機能があるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。