2011年6月21日火曜日

ウィンドウやコントロールの形状を変更する

 一般的な通常のウィンドウ(の形状)を持ったソフトウェアキーボードでも何も問題ないんだけど、少し形状に手を加えることで使う側として何だか楽しくなると個人的に感じています。
WPFではウィンドウを含むコントロールの変形が非常に簡単にできるんだけど、私がよく使う手法は以下の2つ。

private void Window_Loaded(object sender, RoutedEventArgs e)
{
    // ウィンドウの形状を変更
    RectangleGeometry r = new RectangleGeometry(new Rect(0, 0, this.ActualWidth, this.ActualHeight), 30, 30);
    this.Clip = r;

    // ボタンの変形
    button1.RenderTransform = new RotateTransform(10, 45, 45);
}

Clipプロパティに望む形状のGeometryを設定して形を変更する方法と、RenderTransformプロパティに望む変形に対応するTransformクラスを設定する方法です。
用意されているTransformのサブクラスはこちらを参照
このような角が丸みを帯びたウィンドウや傾いたボタンを簡単に作成できます。

よく考えればソフトウェアキーボードの本筋とは少しずれた話ばかりしている気もしないでもないので、次はアプリケーションに文字やキー情報を送る方法でも書くつもり。
ただこのブログはほぼ備忘録orチラ裏なので、予定は未定が前提となっております故、ご了承下さい。

それ以前に、最近暇ができてもスパ4AE比翼恋理のだーりんばかりで、肝心のソフトウェアキーボードの作成があまり進んでいなかったりする…w



0 件のコメント:

コメントを投稿