- - PR -
イベントを発生させる
1
| 投稿者 | 投稿内容 |
|---|---|
|
投稿日時: 2003-12-19 11:31
初歩的な質問のようで恥ずかしいのですが、
調べ方が悪いのか検索で出てこなかったのでどなたか御教唆ください。 やりたいことは、コードからイベントを発生させることです。 具体的にはプログラムから 「JTextAreaで PAGE_UP キーが押されたときのイベント」 を発生させたいのです。 よろしくお願いします。 |
|
投稿日時: 2003-12-19 13:27
マウスが動かされたとか、キー入力が発生したといったような、低レベルイベントをプログラムから発行させるのはあまり良い設計であるとはいえないので、設計を考え直したほうが良いでしょう。
確認していないですが、イベント発行元でJViewPort#scrollRectToVisible()を呼び出してやるというのはいかがでしょう? JViewPortのインスタンスはJScrollPaneから取得することができます。 詳細はAPIリファレンスを参照してください。 |
|
投稿日時: 2003-12-19 14:59
かずくんさん、どうもありがとうございます。
Viewport#scrollRectToVisible() を使用して、 以下のようなコードで解決できました。 // 一画面にはみ出ずに表示されている行数 int visibleRows = scrollBar.getVisibleAmount() / textArea.getRowHeight(); // 次の画面の先頭行のHeight int nextY = visibleRows * textArea.getRowHeight(); // 次の画面のRectangle Rectangle nextRect = new Rectangle(0, nextY, 0, scrollBar.getVisibleAmount()); // 一画面分スクロール viewport.scrollRectToVisible(nextRect); |
1
