18

私は Delphi XE2 を使用しており、ガラス効果が好きで、Windows 7 タブレット ツールのようにガラスを「カット」したいと考えています。ボタンの切り方もご存知でしたら教えていただけると嬉しいです。

ここに画像の説明を入力

ありがとう

4

2 に答える 2

5

上部領域での描画は、グラス フレームを使用して非クライアント領域で描画するか、DwmExtendFrameIntoClientArea API を使用するだけです。

これについて私が見た最良のコード サンプルは、「非クライアント領域」に描画された「QAT」(クイック アクセス ツールバー) 領域を提供する VCL の「リボン」コントロールです。

作成者は、Glass ON の Vista/Win7 システムでのレンダリング方法だけでなく、テーマ エンジンがオフの場合の WinXp、Win7、および Vista でのレンダリング方法も決定する必要があることに注意してください。Vcl.Ribbon.pasこれ専用のユニット (XE 以前の場合は Ribbon.pas だけ) にはかなりのロジックがあります。

procedure TCustomRibbonQuickAccessPopupToolbar.NCPaint(DC: HDC);Vcl リボン ソースを見てください。

下部から突き出た非長方形の「拡張領域」を描画するには、おそらくカスタム ウィンドウ クリッピング領域を適用する必要があります。

于 2012-01-23T18:36:29.393 に答える
0

成形フォームが必要だったということですか?もしそうなら

不規則な形状のフォーム

助けることができます。これはWindows 7で機能すると思います(回答のRemyのコメントに注意してください)。

h番目

于 2012-01-24T04:05:35.733 に答える