半透明でドラッグ(1) | 今宵は月が高い。注意されたし。

半透明でドラッグ(1)

表示してある画像にクリップボードから画像をペーストする際に、貼り付ける画像を半透明に出来たらなぁ……と思って試行錯誤。
まず安直に、貼り付ける画像をコントロールとして表示することにして再描画をVCL任せにしてみた。コントロールもウィンドウだから SetLayeredWindowAttributes API が使えると思ったんですが、拡張スタイルに WS_EX_LAYERED を追加したらエラーで落ちるんだよね orz

フォーム内に、コントロール化したフォームを表示する一種のバグ技があるんですが、特定の操作でエラーが出る(特にコントロールを開放する辺りで)。対策することも出来るらしいんですが、それで WS_EX_LAYERED を受け付けてくれるかは不明なんだろうな、というか駄目なんだろうな( ̄▽ ̄)

自前でアルファブレンドするのもアリかとは思いますが、ドラッグ中に死ぬほどちらつくと判りきってるんですよ俺の腕前じゃあ。