2009-08-30 7 views
2

Delphiで透明で非長方形のボタンを作成するには?デルファイで非長方形のボタンを作成するには?

+2

本当に緊急の場合は、自分で作成するべきではありません。基本を理解するだけでも時間がかかります。すでに作られた数十種類の非長方形のボタンの1つを見つける方が良いでしょう。 Torry'sを試してみてください。 –

答えて

4

基本的には、SetWindowRgnを使用して、ボタン/コントロール/ウィンドウの形状を定義します。例については、hereを参照してください。

また、キーボードでボタンを選択できないのであれば、TImageを使用してOnMouseUpイベントを使用することもできます。

Torryに既に必要なものを追加したサードパーティのボタンがあります。

3

Raize ComponentsにはTRzShapeButtonというコンポーネントがありますが、おそらく自由な代替もあります。

+1

+1 - あなたは非常に成熟しており、素晴らしいサポートを受ける他の多くのコンポーネントを手に入れます。非常によく考えられた図書館。 – skamradt

2

あなたがかなり奇妙に思っていない場合にのみ、SetWindowRgnを使うことができます。リージョン外のビットは単に消えてしまいます。あなたの最善の策はおそらくTCustomTransparentControlから派生していますが、カスタムペインティングを行う必要があります。私は疑いもなく、そのカスタム・ペインティングはあなたが全部期待していたものでしたか?

関連する問題