0

テーブルとその下の選択固有のフォームフィールドのセットで構成されるエディターがあるので、テーブルで選択を行うと、その下のフィールドが変更されます。エディターのサイズが小さすぎると、フィールドコンテナーにスクロールバーが表示されます。

モックアップ

問題は、テーブルで選択を行ったときに、フォーカスがまだテーブル内にあるため、フィールドコンテナを(マウスホイールで)下にスクロールできないことです。現在、コンテナをスクロールしたり、スクロールバー自体を手動でドラッグしたりするには、フィールドの1つを選択する必要がありますが、ターゲットコンテナ内の任意の場所をクリックまたはホバーして、マウスホイールのスクロールに焦点を合わせる方がはるかに簡単です。

複合ボディ(私の場合はForm)を選択可能にするにはどうすればよいですか?またはさらに良いことに、マウスカーソルの位置に応じてスクロールを制御する方法はありますか?

4

1 に答える 1

1

マウスカーソルの位置に基づいてスクロールを制御する場合は、org.eclipse.swt.events.MouseMoveListenerorg.eclipse.swt.events.MouseWheelListenerの組み合わせを作成する必要があります。

コンポーネントメソッドsetFocus()は、コンポーネントをキーボードフォーカスにします。

私はこれをやろうとはしていません。ユーザーがマウスにスクロールホイールを持っていない場合は、必ず対処してください。

于 2012-05-01T17:50:42.130 に答える