MESCIUS InputMan for Windows Forms 12.0J
ドロップダウンウィンドウの拡大表示

タッチ操作時には各コントロールのドロップダウンウィンドウを拡大表示することができます。また、拡大倍率を設定することも可能です。


(図)コンボコントロールのドロップダウンリスト

概要

以下のコントロールが提供するドロップダウンに関連したオブジェクトは、タッチ操作によりドロップダウンボタンが押下されたとき、マウス操作時よりも大きいサイズのドロップダウンウィンドウを表示します。

コントロール 機能
テキストコントロール ドロップダウンエディットウィンドウ、オートコンプリートウィンドウ
マスクコントロール 列挙型フィールドのドロップダウンリスト
日付時刻、日付コントロール ドロップダウンカレンダー、ドロップダウン日付時刻ピッカー
時刻コントロール ドロップダウン時刻ピッカー
数値コントロール ドロップダウン電卓
コンボコントロール ドロップダウンリスト、オートコンプリートウィンドウ
マスクコンボコントロール ドロップダウンリスト
郵便番号コントロール オートコンプリートウィンドウ
住所コントロール 各フィールドのドロップダウンリスト
リッチテキストコントロール カラーピッカー、フォントリスト、フォントサイズリスト

  • マウス操作によりドロップダウンウィンドウが開かれた場合は、TouchDropDownScale プロパティの設定は適用されません。
  • ドロップダウンウィンドウ内のフォントサイズは拡大されません。
拡大倍率の設定

コントロールのTouchDropDownScale プロパティを使用してタッチ操作時のドロップダウンウィンドウの拡大倍率を設定します。デフォルトはマウス操作時の1.5倍で、設定可能な範囲は1〜4倍の範囲です。

以下は、タッチ操作によりデフォルトの1.5倍で表示される日付コントロールのドロップダウンカレンダーの例です。

(図)日付コントロールのドロップダウンカレンダー

以下はコンボコントロールに対して拡大倍率を250%に設定する場合のサンプルコードです。

GcComboBox1.TouchDropDownScale = 2.5F
gcComboBox1.TouchDropDownScale = 2.5f;

リッチテキストボックスコントロールについては、拡大表示される部分ごとにTouchDropDownScale プロパティを設定します。なお、カラーピッカー拡大率のデフォルト値はマウス操作時のは2.5倍です。

ドロップダウンウィンドウ表示時のタッチ操作の検出

DropDownOpeningEventArgs クラスのByTouch プロパティはドロップダウンウィンドウがタッチ操作によって表示された場合にTrueを返します。

以下は日付コントロールでドロップダウンカレンダーがタッチ操作で表示されたかどうかによって、カレンダー内の文字の見え方を変更する場合のサンプルコードです。

Private Sub GcDate1_DropDownOpening(sender As Object, e As GrapeCity.Win.Editors.DropDownOpeningEventArgs) Handles GcDate1.DropDownOpening
  If e.ByTouch = True Then
      ' タッチ操作の場合
      GcDate1.DropDownCalendar.Font = New Font(GcDate1.DropDownCalendar.Font.Name, 12.0F)
      GcDate1.DropDownCalendar.ItemStyle.ContentAlignment = ContentAlignment.MiddleCenter
  Else
      ' タッチ以外の操作の場合
      GcDate1.DropDownCalendar.Font = New Font(GcDate1.DropDownCalendar.Font.Name, 8.25F)
      GcDate1.DropDownCalendar.ItemStyle.ContentAlignment = ContentAlignment.MiddleRight
  End If
End Sub
private void gcDate1_DropDownOpening(object sender, GrapeCity.Win.Editors.DropDownOpeningEventArgs e)
{
    if (e.ByTouch == true)
    {
        // タッチ操作の場合
        gcDate1.DropDownCalendar.Font = new Font(gcDate1.DropDownCalendar.Font.Name, 12.0f);
        gcDate1.DropDownCalendar.ItemStyle.ContentAlignment = ContentAlignment.MiddleCenter;
    }
    else
    {
        // タッチ以外の操作の場合
        gcDate1.DropDownCalendar.Font = new Font(gcDate1.DropDownCalendar.Font.Name, 8.25f);
        gcDate1.DropDownCalendar.ItemStyle.ContentAlignment = ContentAlignment.MiddleRight;
    }
}
関連トピック

 

 


© MESCIUS inc. All rights reserved.