DXライブラリを使用して普通のウインドウに画像を表示したい

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
taketoshi
記事: 222
登録日時: 15年前
住所: 日本国

DXライブラリを使用して普通のウインドウに画像を表示したい

#1

投稿記事 by taketoshi » 14年前

DXライブラリの関数を用いて、普通のウインドウに画像を表示したいです。
マウスカーソルを基点に画像が次々と出てくるようなプログラムを書きたいと思っています。
デスクトップ上に透明なウインドウを作り、マウスポインタの位置を取得して
DXライブラリの画像表示関数で、雪やら星やらを降らせたいと思っています。

テストがてら、DXライブラリの描写関数で、CreateWindow関数を用いて使用したウインドウに
DrawRotaGraph関数とSetDrawBlendMod関数で半透過の画像を表示するプログラムを書いてみたのですが
上手く表示することが出来ませんでした。

出力先のハンドル指定などが無いから駄目なのかなぁと思っておりますが
これらの関数はDxLib_Init();で生成したウインドウにしか描写できないのでしょうか?

DXライブラリはαチャンネルの透過が使いやすいので、普通のアプリケーションにも活用してみたいです。
ご教授お願いいたします。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: DXライブラリを使用して普通のウインドウに画像を表示したい

#2

投稿記事 by softya(ソフト屋) » 14年前

そうです。DXライブラリはDirectXのウィンドウに描画しますので普通のウィンドウには描画できません。
その代わりに、DXライブラリのウィンドウ自体を透明抜きすることは出来ます。

DXライブラリの本家の掲示板の過去ログを参考にして下さい。
「サンプルと実行結果が同じにならない」
http://hpcgi2.nifty.com/natupaji/bbs/pa ... ew&no=2220
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

taketoshi
記事: 222
登録日時: 15年前
住所: 日本国

Re: DXライブラリを使用して普通のウインドウに画像を表示したい

#3

投稿記事 by taketoshi » 14年前

ご提示いただいたリンク先から、透過モードをONにするコードを試してみました。
ですが、DXライブラリのウインドウからフォーカスを失うと処理が止まったり、
画像に対して黒フチが残ってしまったり、色々とまだ問題がありそうです。

一筋縄ではいかなそうですので、一先ず閉じてもう少し勉強してみます。
ありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る