サンデープログラマーのC++/CLI -18ページ目

サンデープログラマーのC++/CLI

Cをちょっと知ってる程度からどこまでいけますか?

<画像の中でA地点からB地点までの明るさ分布が知りたいの>

の、続き。

画像を表示して、2カ所指定して、その間の画像を解析したい。

ってことは、どこを見てるか知りたいから画像の上にA地点からB地点まで線を引きたいじゃないですか。で、線を引き直したら前の線を消したいじゃないですか。


   そしたら下の絵がどうなっちゃうの?


なんとなく普通に考えてレイヤーを構成して上から絵を描けばOKかなーと思うわけで。

じゃぁ pictureBox を重ねてレイヤー化っぽくして、下のレイヤーに絵、上のレイヤーに線でOKかなぁ。


   やってみようドキドキ


上のpictureBoxの背景色で塗りつぶされて…ハートブレイク


透明化PLZということで検索してみると、


「方法:コントロールに透明な背景を指定する」

なぁんてのがあるじゃないの  これだっ(^~^)


ちうわけでそれに従ってフォームのコンストラクタに以下をさくさく記述してみる。


SetStyle( static_cast<ControlStyles>(ControlStyles::SupportsTransparentBackColor), true);
this->pictureLine->BackColor = Color::Transparent ;


さぁどうだっ


下のレイヤーに使ったpictureBoxに書いた絵も透過してフォームの地が現れた!!


あうち汗

道は遠い

フォームの左上に表示されてるアイコンがどのアプリを作っても同じ


              気にくわない


というわけで、
プロパティーのウインドウスタイルのアイコンをクリックして、変更グッド!

フォームデザインでちゃんと変わりましたん。ぐっどぐっど。(^O^)


とおもったらコンパイル通らない~NGなじぇ~わからない~病院しかも子窓のアイコンの方は同じアイコンでコンパイルOK。OK

デフォルトに戻す方法もわがんねーくそー。


というわけでコードエディタでは触んなって書いてあるところのアイコンを設定してるところをコメントアウト。(*^.^*)

うーんーなにがいけないんだろう、か。不思議だ。

というわけで画像処理の続きなのです

なんというか画像からデータを取り出すだけなので、前に作った画像表示プログラムの応用が効くわけですよ

色々な機能は後から付けるとして、まず表示して、規定の場所のデータを取り出すだけまでやろー。ってなことなんです。


簡単簡単。


というわけでちょこっと作ってビルド、ちょこっと作ってビルド。

コピペしてビルド、改変してビルド。

えらーえらーえらー。


   えーなじぇー??ショック!


private メンバ (クラス '変態::PaintAndSokutei' で宣言されている) にアクセスできません。


あぁぁ。これ、前にもやった。

子窓に置いたpictureboxのサイズを変更しようとしたんだよね。

うわーんめんどー。相手がクラスの中の変数=気分的には既に定義された構造体の中身なんでついいじれるとおもっちゃうんだよね。
でもこれがクラスなのね。

慣れなきゃ。