初めて投稿します.
マケレレといいます.
2つピクチャボックスを用意(それぞれA,B)して,
ピクチャボックスA内には,
ランダムに点が表示されるようにしてあります.
それで,このランダムに表示された点の座標を知るために,
ピクチャボックスBを用意したのですが,
まったく表示されません.
ピクチャボックス自体の関数が,
BN_CLICKEDしか用意されず,
しかも,これはスタティックアイテムを対象にしているそうなので,
今回のような動的なものは不可能なのでしょうか?
よろしくお願いします.
どうも今ひとつ要領を得ないのですが、
ピクチャボックスである必要性は何かありますか?
無いのであれば、クライアント領域に直接描画したほうが手っ取り早いと
思いますけれど。
クライアント領域ならWM_LBUTTONDOWNも拾えますし。
まず、開発環境の提示。
次に作っているアプリの簡単な内容説明。
実現したい動作をもっと具体的に説明。
MFCの使用の有無やダイアログベース、SDI、MDI等の記述も必要です。
使用上の注意をよく読まれてから、もう一度説明しなおした方が良いかと思います。
(このスレッドに続けて書けば済むので新たなスレッドを立てる必要はないでしょう)
すいませんでした.
以後気をつきます.
VC++6.0,MFC,SDIで作っています.
基本クラスのViewクラスの選定でCFormViewを選択しました.
内容ですが,グラフを視覚化するアプリを作っています.
ボタンを用意して,それをクリックすると,
用意したピクチャボックスAに点がランダムに表示され,
グラフを形成します.
そして,ランダムに表示された点の座標を知るために,
ピクチャボックスBを用意したいと思っています.
ピクチャボックスでしかボタンとの関係性を持つアプリを作ったことがないので,
今回も同じくしたというだけであって,
必ずピクチャボックスでなければいけないということはありません.
> それで,このランダムに表示された点の座標を知るために,
> ピクチャボックスBを用意したのですが,
> まったく表示されません.
ピクチャボックスBに何を表示したいのですか?
そして、表示するためにどんな処理を記述したのですか?
これだけだと、Aの隣にBをただ配置しただけで、
何か表示されるのを期待しているように読めます。
座標の値を文字列で表示したいのであれば、
ピクチャボックスを使うより、リストボックスを使った方は適当でしょう。
座標の表示の仕方をどのようにしたいのかという説明が抜けています。
ボタンはあくまでもピクチャボックスに点を描画させるためのきっかけですよね。
ボタンが押された時点で描画するべき座標を発生させてこれをCFormViewのメンバ変数に
溜め込み、ウインドウを無効化してOnDrawかOnPaintで溜め込んだ座標値をクライアント
領域に描画しても良いと思います。枠がほしければ、クライアント領域に直接書けば済む
話ですし。
ウインドウを無効化するときに隣のリストボックスに座標値を文字列化してセットすれば、
描画している全ての座標値の表示は可能です。
ピクチャボックスAにかかれている点をクリックして座標値を表示したいのであれば、
そこまではっきりと書かなければ、こちらには伝わってきません。
見も知らない人間同士が文字だけでコミュニケーションしているんですから、
説明する時はこれでもかというぐらい細かく書かないと駄目です。