mcrblog

vcpp-ml

2001年04月

29

[vcpp 00052781] Re: 付けたし

PTVIです。

> プログラムを書いて表示してるのではなく、
> ただ、ダイアログボックスのピクチャで、画像
> を表示しているだけです。この、ピクチャのとこ
> をプログラムで、どんどん画像を変えていきたいわけです。

それはスタティックコントロールですね。
スタティックコントロールを調べてみましょう。

もしも、次々ビットマップをロードするならば、
リソース消費するから解放したほうが良いです。

実際にリソースが消費されるのを確認したことありませんが。
Windows 2000でリソースメータみたいなのないんでしょうか。

-----------------------------------------
Windows 2000で確認したところ、
最初からダイアログテンプレートにあって、
変更していないビットマップは
ダイアログ消滅とともに解放されますね。

確認方法:
子ダイアログ1で
    bmp3 = CStatic::GetBitmap()
で取得して、
親ダイアログに記録し、
子ダイアログ2で
    CStatic::SetBitmap(bmp3) 
すると絵が出ない。

変更すると、変更する前と変更後の両方が、
ダイアログ消滅しても生きていますね。

確認方法:
子ダイアログ1で
    bmp1 = CStatic::SetBitmap(bmp2) で取得して、
戻り値と設定したものを親ダイアログに記録し、
子ダイアログ2で両方を
    CStatic::SetBitmap(bmp1)
    CStatic::SetBitmap(bmp2)
すると絵が出ました。
29

[vcpp 00052780] Re: 付けたし

秋山です。

> プログラムを書いて表示してるのではなく、
> ただ、ダイアログボックスのピクチャで、画像
> を表示しているだけです。この、ピクチャのとこ
> をプログラムで、どんどん画像を変えていきたいわけです。

MFC の場合は、CStatic::SetBitmap()を使えばできるのでは?
そうでなければ、ピクチャコントロールに対して、STM_SETIMAGEメッセージ を
おくる。(詳しくは、MSDNを参照してください。)

自分では、やったことがないので、外していたら勘弁して下さい。

#峰さん、まず名乗るか、署名をしてください。
#それと送信日時が2000/01/06になっていますが、コンピュータの時計が合わせ
#てないのでしょうか?
#また、関連項目の発言は返信でお願いします。

┏━━━━━━━━━┓
┃    秋 山 秀 海   ┣┓
┃...@alles.or.jp┃┃
┗┳━━━━━━━━┛┃
 ┗━━━━━━━━━┛
29

[vcpp 00052779] プログラミングの勉強

こんにちわ。最近プログラミング始めたのですが、
どうゆうふうに勉強すればいいのかわかりません。
みなさんが思う一番効率のいい勉強方法は
どういう勉強方法だと思いますか?
教えてください。
29

[vcpp 00052778] 付けたし

プログラムを書いて表示してるのではなく、
ただ、ダイアログボックスのピクチャで、画像
を表示しているだけです。この、ピクチャのとこ
をプログラムで、どんどん画像を変えていきたいわけです。
29

[vcpp 00052777] Re: 付けたし

佐藤@大分です。

On Thu, 6 Jan 2000 16:40:44 +0900
"峰 義男" <y...@hotmail.com> wrote:

>秋山さん言うとうり確かに、ボタンの押下ハンドラ
>でやればいいのですが、そこで、
>何の関数を使い、ピクチャの画像を自動的に
>変えるのかがわかりません。
>ある関数を、使うとボタンが押されたとき、
>ピクチャの画像が変わるといった関数は無いのでしょうか? 
>   case  IDD_START:ボタン
>        ・・・・・・・・   /処理できる関数/
>    break;

現在、どうやって画像を表示しているのか書いてないので、アドバイスしかねる
のですが。

--
Toshihiro Sato <t...@alles.or.jp>
記事検索
Amazon.co.jp
  • ライブドアブログ