コンボボックスから画像を選択し、ピクチャボックスに画像を表示 – プログラミング – Home

コンボボックスから画像を選択し、ピクチ...
 
通知
すべてクリア

コンボボックスから画像を選択し、ピクチャボックスに画像を表示


PURPLE
 PURPLE
(@PURPLE)
ゲスト
結合: 16年前
投稿: 2
Topic starter  

こんにちは。
質問は初めてですが、手詰まりのところがあるため質問させていただきます。
少しでもアドバイスいただけたらと思います。

現在、WINDOWプログラムを作成中です。

ダイアログ内(A)には以下のものがあります。

コンボボックス(Bダイアログ内)、ピクチャボックス、表示用ボタン、(コンボボックス
のある)画像選択ボタン。

コンボボックスには画像の名前が入っています(picture1; picture2)。

このコンボボックスを選択後、表示用ボタン押下でピクチャボックスに画像が表示され
るようにしたいです。

流れとしては

Aダイアログ起動→画像選択ボタン押下→Bダイアログ生成→コンボボックスから画像名
選択→表示ボタン→画像表示

です。

他所のアドバイスで

コンボボックスで選択された画像名を記憶する

というのがありました。

そこで

int index; // コンボボックス

CString record;
GetLBText(index, record);

としました。

それ以降、画像表示のプログラムを組んでいきましたが上手く表示されません。

お手数ですがご教授いただければと思います。
よろしくお願いします。


引用解決済
トピックタグ
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 21年前
投稿: 600
 

原因の切り分けはできていますか?
Comboboxからではなく画像名を[直接指定]した場合、正しく表示されますか?


返信引用
PURPLE
 PURPLE
(@PURPLE)
ゲスト
結合: 16年前
投稿: 2
Topic starter  

レスいただきありがとうございます。

やってみた結果、直接読込では一瞬表示されてすぐに消えてしまいました。

恐らくこれが原因ではないのかと思うのですが、

この現象は何故起きるのでしょうか?


返信引用
仲澤@失業者
(@uncle_kei)
Prominent Member
結合: 5年前
投稿: 828
 

質問内容に十分な情報が無いので答えようが無いと思います(vv;)。

1.「上手く表示されない」とは、どのような状態ですか。
2.「画像」とは何ですか。
3.動作中、「画像」はどこにありますか。
4.コンボボックスのアイテムインデックスと、「画像」と
  「画像名称」対応はどのような仕組みになってますか。

てなところが知りたい。


返信引用
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2660
 

書かれている内容からでは単なる想像でしか書き込めないので
回答があさっての方向になるかもしれません。
なので、出せる情報はとにかく出す事が適切なレスをもらう為の早道です。
何を出せば良いのかわからないと言うのは、多分自分自身でもちゃんと
整理ができていない所為だと思うのでどうやったら自分の状況を理解して
もらえるのかと言う所に知恵を絞ると不思議と自己解決できたりします。

と、これだけではあんまりなので想像でレスしときます。
情報が足りない状態なのであさっての方向でもご容赦を。
すぐ消えてしまうと言う話なので読み込んだ画像の情報が
保持されずに開放されているのではないかと予想します。
つまり、ピクチャーボックスに設定するために読み込んだのに
設定した直後で開放してしまっているのでは?
表示させて起きたい間はずっと保持しておかないと駄目ですよ。
Windowsではプログラマが意図しないタイミングでも再描画が
発生します。例えば、他のウインドウが重なったとかが要因で
再描画指示がWindowsOSから来ます。
この時に再描画に使う画像が保持されていないと再描画時に
描画できなくて消えます。
想像で書いているので外しているかもしれません。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました