忍者ブログ

銀朱工房

クッソ初心者がダンジョンRPGを作成する パソコンって何ですかって人が頑張ってダンジョンRPGを作ったローという感じ クソゲーが出来上がる過程を報告って感じですね やった内容は右のカテゴリーから参照お願いいたします。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

ウインドウにビットマップを表示して見よう7

手早くコーディングォを終わらせて
実行して見る


※注:はめ込みではありません

うむ、ビットマップでましたね
次は画像を重ねて行こうと思います。

拍手[0回]

PR

ウインドウにビットマップを表示して見よう6

さらに続き

>ウインドウの無効領域を再描画するタイミングになると
>WM_PRINTメッセージが発行
>↓
>このメッセージをウインドウプロシージャで処理する

WM_PRINTが発行されるタイミングについて
ウインドウの無効領域を再描画するタイミングになると
WM_PRINTメッセージが発行されるらしい
あんまり詳しくないけど、詳しくは”ウインドウの再描画”で

ビデオカードのメモリの内容をコピルには以下の関数を使う
BitBlt()関数:
コピー元デバイスから座標とサイズを指定し、別のデバイスの指定
した座法に丸ごと転送する
BOOL BitBlt( HDC hdcDest, int nXDest int nYDest, int nWidth int nHeight,
         HDC hdcSrc, int nXSrc, int nYSrc,
         DWORD dwRop );
hdcDest:指定するデバイスコンテキストがコピー先となるデバイス
nXDest、nYDest:コピー先デバイスの左上墨を表す座標
nWidth, nHeight:コピー先のサイズ
hdcSrc:コピー元のデバイスコンテキスト
nXSrc、nYSrc:コピー元の左上隅の座標
dwRop:ラスタオペレーションを示す定数を指定する

ラスタオペレーション
SRCCOPY:コピー元をコピー先にそのままコピー

以上を踏まえてコーディングすれば
ビットマップを表示できるはず

拍手[0回]

ウインドウにビットマップを表示して見よう5

さらに前回の続き

>デバイスコンテキストにGDIオブジェクト(↑で作ったもの)を設定する
>↓
SelectObject()関数をつかう
SelectObject():
SelectObject( HDC hdc, HGDIOBJ hgdiobj );
デバイスコンテキストにGDIオブジェクトを設定する
hdcにはGDIオブジェクトを変更するデバイスコンテキストのハンドルを
設定する
hgdiobjには、新しく設定するオブジェクトを設定する
返り値は以前設定されていたGDIオブジェクトのハンドルを返す

>メモリデバイスを転送する時にビットマップのサイズが必要
>なので読み込んだビットマップの情報を読み込んでおく
>↓
メモリデバイスを転送する時にビットマップサイズが必要
な場合はHBITMAPのハンドルがあれば
GetObject()関数でビットマップの情報を取得できる
int GetObject( HGDIOBJ hgdiobj, int cbBuffer, LPVOID lpvObject )
hgdiobjには、情報を取得したいGDIオブジェクトのハンドルを指定する
cbBufferにはバッファサイズを指定する
lpvObjectにはオブジェクトの情報を格納するバッファへのポインタを指定する
さらに↓を使うと良いヨ
GetWindowLong()関数:
LONG GetWindowLong( HWND hWnd, int nIndex)
ウインドウの情報を取得する
hWndに指定したウインドウからnlndexに指定した
項目の情報を取得する

何か解かりにくくなってきたカナ
自分が理解したときのメモなんだが、読み返すとなんか
あれだなぁ

まぁ、ソースと一緒に読めばキット解かるヨ

拍手[0回]

ウインドウにビットマップを表示して見よう4

前回の続き
>メモリデバイスの構築
>デバイスに互換性のあるメモリデバイスを構築する
>↓
>んで↑のデバイスが扱うビットマップを指定する
>ファイルからイメージを読み込む

ファイルからイメージを読み込む
LoadImage()関数を使う
リソースからビットマップを読み込んでビットマップのハンドル
HBITMAPを返す
したがってメモリデバイスコンテキストで扱うハンドルを↑のを
渡せばビットマップが読み込める
HANDLE LoadImage( HINSTANCE hinst, LPCTSTR lpszName, UINT uType,
          int cxDesired, int cyDesired, UINT fuLoad );
hinstは、実行ファイルに埋め込まれているリソースから
イメージを読み込む

lpszName:ファイルからイメージを読み込むにはファイルパスを表す
文字列へのポインタを指定する
uType:読み込むイメージのタイプを指定
    ビットマップ:IMAGE_BITMAP
cxDesired, cyDesired:イメージのサイズを指定する。
           0を指定すると本来のイメージのサイズが設定される

ビットマップが不要になった場合は
DeleteObject()関数で開放する必要がある

ということであーる

拍手[0回]

プロフィール

HN:
ンメローン
性別:
男性
職業:
なんちゃってソフト屋さん
趣味:
いろいろある多趣味である
自己紹介:
寝るのが大好きなキモオタです。
しいていうなら、
ただの通りすがりのメロンみたいなものですよ

カレンダー

08 2024/09 10
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

ブログ内検索

フリーエリア

最新CM

[08/30 imitazione cartier anelli oro donna]
[02/17 kos3xnqd9v3]
[02/16 uem4paid3j2]

バーコード

コガネモチ

P R

ページ