C言語windows.hライブラリの常用関数(一)

3563 ワード

1:FindWindow関数
この関数は、ウィンドウクラス名またはウィンドウタイトル名で特定のウィンドウハンドルを検索できます.戻り値はウィンドウのハンドルです(Windowsでは、ハンドルはシステム内部のデータ構造の参照です.たとえば、ウィンドウを操作しているか、Delphiフォームを操作している場合、ウィンドウのハンドルが与えられます.142番のウィンドウを操作していることを通知します.これにより、アプリケーションは142番のウィンドウを操作するように要求することができます.ウィンドウを移動したり、ウィンドウのサイズを変更したり、ウィンドウを最小化など.実際、多くのWindows API関数はハンドルを最初のパラメータとしています.GDI(グラフィックデバイスインタフェース)ハンドル、メニューハンドル、インスタンスハンドル、ビットマップハンドルなどは、ウィンドウ関数に限定されるものではない.言い換えれば、ハンドルは内部コードであり、ウィンドウ、ビットマップ、アイコン、メモリブロック、カーソル、フォント、メニューなど、システムによって制御される特殊な要素を参照することができる.)
関数の使い方
#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関数
最初の例ではすでに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関数
2つ目の例では、マウスクリックでクリックされたウィンドウのハンドルを取得する機能を持つ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;
}