本日のノート:Windowsアプリケーションを学ぶ

これらのノートは以下に示すURLを参考に作成されました。
標準 Windows API

「ウィンドウを作る」
用意されたウィンドウ
ウィンドウ生成には二つの作業がある
・ウィンドウクラスの登録
・ウィンドウの生成

今回はウィンドウクラスは既存のものを使い後者の作業を行います。

ウィンドウの生成にはCreateWindow関数を使用します。

HWND CreateWindow(
 LPCTSTR lpClassName , LPCTSTR lpWindowName,
 DWORD dwStyle ,
 int x , int y , int nWidth , int nHeight ,
 HWND hWndParent , HMENU hMenu ,
 HANDLE hInstance , LPVOID lpParam
);


lpClassName ・・・ウィンドウクラスを指定する(今回はSTATICを使用)
dwStyle    ・・・ウィンドウのスタイルを設定する



しかし、デフォルトで返されたウィンドウハンドルは不可視状態です。
これを見えるように変更するにはShowWindow関数を使用します。

BOOL ShowWindow( HWND hWnd , int nCmdShow );

hWnd     ・・・ ウィンドウのハンドルを指定します
nCmdShow ・・・ ウィンドウの表示状態を表す定数を指定します(SH_SHOWでウィンドウを表示します)
戻り値    ・・・ ウィンドウの以前の状態を返します。
表示状態なら0以外、
非表示だったなら0を返します。

サンプルソース
CreateWindowText.txt

実行結果
CreateWindowSample.png



拡張スタイル
CreateWindow関数に更に引数を一つ加えたCreateWindowEx関数というものがあります。
スタイルを拡張してもう一つ指定することが可能です。

HWND CreateWindowEx(
 DWORD dwExStyle,
 LPCTSTR lpClassName , LPCTSTR lpWindowName,
 DWORD dwStyle ,
 int x , int y , int nWidth , int nHeight ,
 HWND hWndParent , HMENU hMenu ,
 HANDLE hInstance , LPVOID lpParam
);


サンプルソース
CreateWindowExText.txt

実行結果
CreateWindowExSample.png
このエントリーをはてなブックマークに追加

コメントの投稿

非公開コメント

Translation


プロフィール

チーズくん

Author:チーズくん
個人的メモをただ羅列しています。
twitter:@cheese1038

バロメーター
最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ