- ベストアンサー
半透明の線について
http://www.kumei.ne.jp/c_lang/sdk/sdk_97.htm 上記サイトのプログラムを実行するとマウスにて必要範囲を選択できますが、選択範囲の矩形の線が半透明に見えます。 同様の効果は、デスクトップ上で何らかのアプリをドラッグすると確認できます。 このような半透明の線はどのようにして実現するのでしょうか? 上記サイトのコードを見ても普通の黒い線にしか思えないのですが・・・・・ ご存知の方よろしくお願いいたします。 VC++6.0 MFCにて
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
半透明の線とは、ラバーバンドのことですよね? これはたぶん半透明ではなく、 描画元の色と描画先の色の反転した物だと思います。 ちょっと自信ないのですが、SetROP2関数を呼んでいるところの第2引数にR2_XORPENを設定してみてはどうでしょうか?
その他の回答 (1)
- cherry3
- ベストアンサー率39% (18/46)
回答No.2
#1です。 実はラバーバンドを使ったものを作ったのははもう何年も前で、 すでにそのときのソースも残ってなかったので、 ちょっと自信がありませんでした。 回答に対する自信に関してはそのときの気分でつけているのであまり気にしないでください^^; なにはともあれ解決したようでよかったです。
質問者
お礼
返信有難う御座います。 私もご多分に漏れずVC++初心者で悪戦苦闘しております。でも、好きで止められず全てを投げ打って取り組んでいます。 好きなことに対しては、プログラム以外の話題を読んだり聞いたりすることも楽しく、専門家のお話を聞いてみたくて敢えて締め切らずにいました。 今後ともよろしくお願いします。
お礼
回答ありがとうございます。 またまた慌てて投稿してしまい、コードをよく見るとおっしゃる通り、なにやら見たことの無いSetROP2関数が有るではないですか。 この線をラバーバンドと呼ぶのですか覚えておきます。 第2引数を変更すると線が無くなったので確認できました。 OKWebは便利ですが、質問した人が自分で訂正なり自己回答なりが出来ないのがちょっと・・・・ 最後になかなかレスがつかない中、ようやく付いたレスの回答者を見ると、専門家とあるではないですか。 専門家の人でも自信なしになってします程VC++は難しいのでしょうか? それとも、私の説明が下手なので、質問に対する回答になっているかどうかが自信無しだったのかも。