コントロールの一部をくりぬくには?

解決


おおさわ  2005-09-17 19:51:43  No: 17603

質問です。

コントロールの形状が矩形のものばかりなので、丸や多角形などの複雑な形をしたコントロールを作ろうと考えています。
このとき、コントロールの一部をくりぬく必要があると思うのですが、その方法が分かりません。
検索すると、フォームをくりぬく方法は載っているのですが、コントロールをくりぬく方法が見つかりませんでした。

どのようにすれば可能でしょうか?
また、さらに半透明化する方法も教えていただければ幸いです。

(TGraphicControl を継承した軽量コンポーネントでは可能でした。TWinControl を継承した重量コンポーネントでの方法を知りたいのです)


おっ  2005-09-18 01:34:08  No: 17604

> フォームをくりぬく方法
これは、このように記述してありませんか?
SetWindowRgn(Self.Handle, 〜)
とか
SetWindowRgn(Handle, 〜)

Handleの部分を「なんかのコンポーネント.Handle」とするだけでできます。

半透明については、他の人のレス待ちということで。
APIを使うならWin2000以降なのかな?


おおさわ  2005-09-25 07:33:31  No: 17605

返信遅れてすみません。おっ様に指摘していただいた部分を修正することで解決しました。

半透明に関してはあきらめることにします。

ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加