• ベストアンサー

jscrollpaneで1番上を表示する

jscrollpaneとjtextareaを組み合わせてテキストを読み込んできて表示するプログラムです。このとき、読み込みが終わったときに1番下にスクロールされている。これを1番上を表示したいのですがどうしたらいいですか?

  • Java
  • 回答数1
  • ありがとう数0

質問者が選んだベストアンサー

  • ベストアンサー
  • koki_m
  • ベストアンサー率83% (45/54)
回答No.1

こんばんは。 読込みが終わった後に、こちら↓と同じ方法でスクロールできます。 http://oshiete1.goo.ne.jp/qa1961024.html ================================================== // sp : JScrollPane sp.getViewport().scrollRectToVisible(new Rectangle(0, Integer.MIN_VALUE, 1, 1));

osiete_kun
質問者

補足

前回はsetCaretPosition()はダメだったので忘れてました。 今回のプログラムはscrollRectToVisible()はダメでsetCaretPosition()でうまくいきました。

関連するQ&A

  • JTextAreaとJScrollPane

    JScrollPaneにJTextAreaを貼り付けているのですが、 JTextArea.setText()でテキストを設定すると、なぜか テキストエリアが一番下までスクロールされてしまいます。 これを回避するようなことは可能でしょうか? すみませんが回答お願いします。

    • ベストアンサー
    • Java
  • JScrollPaneの細かい設定について

    JScrollPaneのViewPortにJTextAreaを追加したとします。 JScrollPane pane_txt = new JScrollPane(); JTextArea txt = new JTextArea(); pane_txt.setViewportView(txt); このテキストに次々と文字列が追加された場合、作成されるScrollバーがそれについてくる(カレントな行が必ずView内に表示される)ようにするにはどうすればよいのでしょうか? また、その逆(ついてこさせない)をするにはどうすればよいのでしょうか? アドバイスお願いします。

    • ベストアンサー
    • Java
  • JScrollpaneとJTextAreaについて質問

    はじめまして。 JTextAreaにJScrollpaneを利用して スクロールをつけたのですが、表示時に 自動的にスクロールしてしまい、 縦横スクロールバーが右下に移動してしまいます。 このスクロールをなんとか制御して、 先頭(左上)に移動させたたいのですが、 どのようにしたら良いでしょうか? テキストエリアは、ダイアログ(JOptionPane)に 貼り付けています。 宜しくお願い致します。

  • JScrollPane

    JDialog上に、JScrollPaneにJPanelを付けて、 そこにJTreeを表示しています。 条件を指定して、このJDialogをshowすると、 データをJTreeに表示するのですが、データが多いときは スクロールバーが表示され、必ずスクロールバーの中の スライダ(?)が一番下まで下がっています。 JTreeのルートが見えるように常に右上にしておきたいのですが、 どうすればいいのでしょうか? JTreeでsetSelectionRow(0)とかして、一番上を選択するように してみたのですがうまくいきません。 よろしくお願い致します。

    • ベストアンサー
    • Java
  • 最後の行に移動するには?

    JTextArea textArea = new JTextArea(); JScrollPane sp = new JScrollPane(textArea); とりあえずスクロールできるのですが、textArea.append()で追加しても、いちいち手動で下の行まで移動します。追加したら自動で一番下を表示させるにはどうしたらいいですか?

    • ベストアンサー
    • Java
  • JScrollPaneのオブジェクトは位置位置

    JScrollPaneについて、質問させて頂きます。 JScrollPaneに、JTextAreaを縦一列に配置したJPanelを追加しようとしたのですが、何故かJScrollPaneに配置すると、JPanel内のJTextAreaの配置が横一列になってしまいます。 つまり、現在は TEST1 TEST2 TEST3 TEST4....(JTextAreaを並べたJPanelです) となっているJScrollPaneを Test1 Test2 Test3 Test4 のように表示したいのです。 大学の授業に絡むコードですので全てを貼付けるとネットから拾ってきたのではと思われてしまうため、全ては貼付けられませんがコードの一部を張りつけさせて頂きます。 まずはJScrollPaneの設定ですが private JScrollPane getScroll() { if (scroll == null) { scroll = new JScrollPane(innerHomeTimeLine); scroll.setPreferredSize(new Dimension(width, height)); scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS); scroll.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); scroll.setWheelScrollingEnabled(true); } return scroll; } としてJScrollPaneを作成しています、innerHomeTimeLineはJTextAreaを縦一列に並べたJPanelです。 このJScrollPaneを this.add(getScroll(),BorderLayout.NORTH); でJPanelに追加し、そのJPanel(homeTimeLine)をthis.add(homeTimeLine,BorderLayout.CENTER); でJAppletに追加し、表示しています。 JPanel(innerHomeTimeLine)そのものをJAppletに追加すると縦一列に並んだまま表示出来るのは確認しているので、JScrollPaneの設定の問題だと思うのですが、どうすれば良いのでしょうか.... やり方をご存知の方がいましたら、解答して頂けると助かります、宜しくお願いします。 さすがにこのコードだけでは解答は無理、といったことでしたら、必要な部分を教えて頂ければ、抜き出して追記させて頂きます。

    • ベストアンサー
    • Java
  • 「jscrollPane」でテキストを認識しない

    jqueryのプラグイン「jscrollPane」を使用してスクロールバーのデザインをカスタムしてます。 html上に直接記入したテキストだとちゃんと認識してスクロールバーが変更されるのですが、jquery(google APIでRSSを書き出してます)で書き出しているテキストは認識してくれません。(スクロールバーが表示されません。) 直接htmlに書いた場合とダメな場合を画像で添付しております。 2日ぐらいいじってますが分かりません。頭がパンクしそうです。 よろしくお願いします。

  • JScrollPaneのスクロールを制御したい

    お疲れ様です、質問があります。 タイトルのとおりですが、JScrollPaneのスクロールを制御したいのです。具体的には JTableでデータの一覧を表示させて、その1レコードを選択するとします。その選択をボタンを押すごとに選択行を一行ずつ下げていくとJScrollPaneの表示域の下にセレクトされた行が隠れます。そのタイミングでスクロールを下げてセレクトされた行を見れる位置までずらしたいのです。 setAutoScrolls(True)で自動的に制御しようとしたのですが、マウスでレコードをクリックしてからキーボードの矢印の「↓」を押すと自動的にスクロールが動いてくれるのですが。。。 スクロールの制御方法について知っていらっしゃる方よろしくお願いします。

    • ベストアンサー
    • Java
  • 初心者です。JScrollPane について教えてください。

    まったくの初心者ですが、java入門書を参考にしながらjavaアプリケーションを作成しています。的外れなことをしているのかもしれませんが、JScrollPane(パネル名) ではスクロールバーをつくれないのでしょうか? JScrollPane(JLabel名)にした場合はうまくうごくのですが、JScrollPane(パネル名)にした場合にスクロールバーが付いて(線の様になっている?)くれません。 縦軸に機種、横軸に日付を配置して、小さいグラフをマトリックス状に ならべたいのです。日付の期間、または選択した機種により表示するグラフがパネル表示領域を超えてしまいます。 素人なのでむずかしいことはわかりません。わかりやすくおしえていただけないでしょうか。

    • ベストアンサー
    • Java
  • JScrollPaneで、表示がおかしくなります

    いつも、お世話になっております。 JScrollPaneを使って、大きなサイズのJpanelを表示しようとしていますが、Jpanelのheightが770ピクセルを超えたあたりから、上で表示したものが重なって表示されてしまったりして、正常に表示できなくなってしまい困っています。 Jpanelでは文字や線などを描画して表示しているので、ダブルバッファリングしていないのかと考え、調べてみましたが、ダブルバッファは行っていました。 回避する方法等をご存知でしたら、教えていただけないでしょうか。 宜しくお願い致します。

    • ベストアンサー
    • Java