<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_by_API%2Fjavax.swing%2FScrollPaneConstants</id>
		<title>Java by API/javax.swing/ScrollPaneConstants - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.jexp.ru/index.php?action=history&amp;feed=atom&amp;title=Java_by_API%2Fjavax.swing%2FScrollPaneConstants"/>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_by_API/javax.swing/ScrollPaneConstants&amp;action=history"/>
		<updated>2026-04-21T12:12:53Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_by_API/javax.swing/ScrollPaneConstants&amp;diff=716&amp;oldid=prev</id>
		<title> в 17:43, 31 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_by_API/javax.swing/ScrollPaneConstants&amp;diff=716&amp;oldid=prev"/>
				<updated>2010-05-31T17:43:48Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 17:43, 31 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.jexp.ru/index.php?title=Java_by_API/javax.swing/ScrollPaneConstants&amp;diff=717&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.jexp.ru/index.php?title=Java_by_API/javax.swing/ScrollPaneConstants&amp;diff=717&amp;oldid=prev"/>
				<updated>2010-05-31T14:19:49Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.GridLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
import javax.swing.ScrollPaneConstants;&lt;br /&gt;
public class MainClass extends JPanel {&lt;br /&gt;
  public MainClass() {&lt;br /&gt;
    setLayout(new BorderLayout());&lt;br /&gt;
    JPanel jp = new JPanel();&lt;br /&gt;
    jp.setLayout(new GridLayout(20, 20));&lt;br /&gt;
    int b = 0;&lt;br /&gt;
    for (int i = 0; i &amp;lt; 20; i++) {&lt;br /&gt;
      for (int j = 0; j &amp;lt; 20; j++) {&lt;br /&gt;
        jp.add(new JButton(&amp;quot;Button &amp;quot; + b));&lt;br /&gt;
        ++b;&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    // Add panel to a scroll pane.&lt;br /&gt;
    int v = ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED;&lt;br /&gt;
    int h = ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED;&lt;br /&gt;
    JScrollPane jsp = new JScrollPane(jp, v, h);&lt;br /&gt;
    // Add scroll pane to the content pane.&lt;br /&gt;
    add(jsp, BorderLayout.CENTER);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame frame = new JFrame();&lt;br /&gt;
    frame.getContentPane().add(new MainClass());&lt;br /&gt;
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    frame.setSize(200, 200);&lt;br /&gt;
    frame.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ScrollPaneConstants.LOWER_LEFT_CORNER ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.Dimension;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Rectangle;&lt;br /&gt;
import javax.swing.ImageIcon;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
public class Main extends JFrame {&lt;br /&gt;
  private JLabel label = new JLabel(new ImageIcon(&amp;quot;largejexpLogo.gif&amp;quot;));&lt;br /&gt;
  public Main() {&lt;br /&gt;
    super(&amp;quot;JScrollPane Demo&amp;quot;);&lt;br /&gt;
    JScrollPane scrollPane = new JScrollPane(label);&lt;br /&gt;
    JLabel[] corners = new JLabel[4];&lt;br /&gt;
    for (int i = 0; i &amp;lt; 4; i++) {&lt;br /&gt;
      corners[i] = new JLabel();&lt;br /&gt;
      corners[i].setBackground(Color.white);&lt;br /&gt;
      corners[i].setOpaque(true);&lt;br /&gt;
    }&lt;br /&gt;
    JLabel rowheader = new JLabel() {&lt;br /&gt;
      public void paintComponent(Graphics g) {&lt;br /&gt;
        super.paintComponent(g);&lt;br /&gt;
        Rectangle rect = g.getClipBounds();&lt;br /&gt;
        for (int i = 50 - (rect.y % 50); i &amp;lt; rect.height; i += 50) {&lt;br /&gt;
          g.drawLine(0, rect.y + i, 3, rect.y + i);&lt;br /&gt;
          g.drawString(&amp;quot;&amp;quot; + (rect.y + i), 6, rect.y + i + 3);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      public Dimension getPreferredSize() {&lt;br /&gt;
        return new Dimension(25, (int) label.getPreferredSize()&lt;br /&gt;
            .getHeight());&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    rowheader.setBackground(Color.white);&lt;br /&gt;
    rowheader.setOpaque(true);&lt;br /&gt;
    JLabel columnheader = new JLabel() {&lt;br /&gt;
      public void paintComponent(Graphics g) {&lt;br /&gt;
        super.paintComponent(g);&lt;br /&gt;
        Rectangle r = g.getClipBounds();&lt;br /&gt;
        for (int i = 50 - (r.x % 50); i &amp;lt; r.width; i += 50) {&lt;br /&gt;
          g.drawLine(r.x + i, 0, r.x + i, 3);&lt;br /&gt;
          g.drawString(&amp;quot;&amp;quot; + (r.x + i), r.x + i - 10, 16);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      public Dimension getPreferredSize() {&lt;br /&gt;
        return new Dimension((int) label.getPreferredSize().getWidth(),&lt;br /&gt;
            25);&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    columnheader.setBackground(Color.white);&lt;br /&gt;
    columnheader.setOpaque(true);&lt;br /&gt;
    scrollPane.setRowHeaderView(rowheader);&lt;br /&gt;
    scrollPane.setColumnHeaderView(columnheader);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.LOWER_LEFT_CORNER, corners[0]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.LOWER_RIGHT_CORNER, corners[1]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, corners[2]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.UPPER_RIGHT_CORNER, corners[3]);&lt;br /&gt;
    getContentPane().add(scrollPane);&lt;br /&gt;
    setSize(400, 300);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    new Main();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
  &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ScrollPaneConstants.LOWER_RIGHT_CORNER ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.Dimension;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Rectangle;&lt;br /&gt;
import javax.swing.ImageIcon;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
public class Main extends JFrame {&lt;br /&gt;
  private JLabel label = new JLabel(new ImageIcon(&amp;quot;largejexpLogo.gif&amp;quot;));&lt;br /&gt;
  public Main() {&lt;br /&gt;
    super(&amp;quot;JScrollPane Demo&amp;quot;);&lt;br /&gt;
    JScrollPane scrollPane = new JScrollPane(label);&lt;br /&gt;
    JLabel[] corners = new JLabel[4];&lt;br /&gt;
    for (int i = 0; i &amp;lt; 4; i++) {&lt;br /&gt;
      corners[i] = new JLabel();&lt;br /&gt;
      corners[i].setBackground(Color.white);&lt;br /&gt;
      corners[i].setOpaque(true);&lt;br /&gt;
    }&lt;br /&gt;
    JLabel rowheader = new JLabel() {&lt;br /&gt;
      public void paintComponent(Graphics g) {&lt;br /&gt;
        super.paintComponent(g);&lt;br /&gt;
        Rectangle rect = g.getClipBounds();&lt;br /&gt;
        for (int i = 50 - (rect.y % 50); i &amp;lt; rect.height; i += 50) {&lt;br /&gt;
          g.drawLine(0, rect.y + i, 3, rect.y + i);&lt;br /&gt;
          g.drawString(&amp;quot;&amp;quot; + (rect.y + i), 6, rect.y + i + 3);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      public Dimension getPreferredSize() {&lt;br /&gt;
        return new Dimension(25, (int) label.getPreferredSize()&lt;br /&gt;
            .getHeight());&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    rowheader.setBackground(Color.white);&lt;br /&gt;
    rowheader.setOpaque(true);&lt;br /&gt;
    JLabel columnheader = new JLabel() {&lt;br /&gt;
      public void paintComponent(Graphics g) {&lt;br /&gt;
        super.paintComponent(g);&lt;br /&gt;
        Rectangle r = g.getClipBounds();&lt;br /&gt;
        for (int i = 50 - (r.x % 50); i &amp;lt; r.width; i += 50) {&lt;br /&gt;
          g.drawLine(r.x + i, 0, r.x + i, 3);&lt;br /&gt;
          g.drawString(&amp;quot;&amp;quot; + (r.x + i), r.x + i - 10, 16);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      public Dimension getPreferredSize() {&lt;br /&gt;
        return new Dimension((int) label.getPreferredSize().getWidth(),&lt;br /&gt;
            25);&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    columnheader.setBackground(Color.white);&lt;br /&gt;
    columnheader.setOpaque(true);&lt;br /&gt;
    scrollPane.setRowHeaderView(rowheader);&lt;br /&gt;
    scrollPane.setColumnHeaderView(columnheader);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.LOWER_LEFT_CORNER, corners[0]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.LOWER_RIGHT_CORNER, corners[1]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, corners[2]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.UPPER_RIGHT_CORNER, corners[3]);&lt;br /&gt;
    getContentPane().add(scrollPane);&lt;br /&gt;
    setSize(400, 300);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    new Main();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
  &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ScrollPaneConstants.UPPER_LEFT_CORNER ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.Dimension;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Rectangle;&lt;br /&gt;
import javax.swing.ImageIcon;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
public class Main extends JFrame {&lt;br /&gt;
  private JLabel label = new JLabel(new ImageIcon(&amp;quot;largejexpLogo.gif&amp;quot;));&lt;br /&gt;
  public Main() {&lt;br /&gt;
    super(&amp;quot;JScrollPane Demo&amp;quot;);&lt;br /&gt;
    JScrollPane scrollPane = new JScrollPane(label);&lt;br /&gt;
    JLabel[] corners = new JLabel[4];&lt;br /&gt;
    for (int i = 0; i &amp;lt; 4; i++) {&lt;br /&gt;
      corners[i] = new JLabel();&lt;br /&gt;
      corners[i].setBackground(Color.white);&lt;br /&gt;
      corners[i].setOpaque(true);&lt;br /&gt;
    }&lt;br /&gt;
    JLabel rowheader = new JLabel() {&lt;br /&gt;
      public void paintComponent(Graphics g) {&lt;br /&gt;
        super.paintComponent(g);&lt;br /&gt;
        Rectangle rect = g.getClipBounds();&lt;br /&gt;
        for (int i = 50 - (rect.y % 50); i &amp;lt; rect.height; i += 50) {&lt;br /&gt;
          g.drawLine(0, rect.y + i, 3, rect.y + i);&lt;br /&gt;
          g.drawString(&amp;quot;&amp;quot; + (rect.y + i), 6, rect.y + i + 3);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      public Dimension getPreferredSize() {&lt;br /&gt;
        return new Dimension(25, (int) label.getPreferredSize()&lt;br /&gt;
            .getHeight());&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    rowheader.setBackground(Color.white);&lt;br /&gt;
    rowheader.setOpaque(true);&lt;br /&gt;
    JLabel columnheader = new JLabel() {&lt;br /&gt;
      public void paintComponent(Graphics g) {&lt;br /&gt;
        super.paintComponent(g);&lt;br /&gt;
        Rectangle r = g.getClipBounds();&lt;br /&gt;
        for (int i = 50 - (r.x % 50); i &amp;lt; r.width; i += 50) {&lt;br /&gt;
          g.drawLine(r.x + i, 0, r.x + i, 3);&lt;br /&gt;
          g.drawString(&amp;quot;&amp;quot; + (r.x + i), r.x + i - 10, 16);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      public Dimension getPreferredSize() {&lt;br /&gt;
        return new Dimension((int) label.getPreferredSize().getWidth(),&lt;br /&gt;
            25);&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    columnheader.setBackground(Color.white);&lt;br /&gt;
    columnheader.setOpaque(true);&lt;br /&gt;
    scrollPane.setRowHeaderView(rowheader);&lt;br /&gt;
    scrollPane.setColumnHeaderView(columnheader);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.LOWER_LEFT_CORNER, corners[0]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.LOWER_RIGHT_CORNER, corners[1]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, corners[2]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.UPPER_RIGHT_CORNER, corners[3]);&lt;br /&gt;
    getContentPane().add(scrollPane);&lt;br /&gt;
    setSize(400, 300);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    new Main();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
  &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ScrollPaneConstants.UPPER_RIGHT_CORNER ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
import java.awt.Color;&lt;br /&gt;
import java.awt.Dimension;&lt;br /&gt;
import java.awt.Graphics;&lt;br /&gt;
import java.awt.Rectangle;&lt;br /&gt;
import javax.swing.ImageIcon;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JLabel;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
public class Main extends JFrame {&lt;br /&gt;
  private JLabel label = new JLabel(new ImageIcon(&amp;quot;largejexpLogo.gif&amp;quot;));&lt;br /&gt;
  public Main() {&lt;br /&gt;
    super(&amp;quot;JScrollPane Demo&amp;quot;);&lt;br /&gt;
    JScrollPane scrollPane = new JScrollPane(label);&lt;br /&gt;
    JLabel[] corners = new JLabel[4];&lt;br /&gt;
    for (int i = 0; i &amp;lt; 4; i++) {&lt;br /&gt;
      corners[i] = new JLabel();&lt;br /&gt;
      corners[i].setBackground(Color.white);&lt;br /&gt;
      corners[i].setOpaque(true);&lt;br /&gt;
    }&lt;br /&gt;
    JLabel rowheader = new JLabel() {&lt;br /&gt;
      public void paintComponent(Graphics g) {&lt;br /&gt;
        super.paintComponent(g);&lt;br /&gt;
        Rectangle rect = g.getClipBounds();&lt;br /&gt;
        for (int i = 50 - (rect.y % 50); i &amp;lt; rect.height; i += 50) {&lt;br /&gt;
          g.drawLine(0, rect.y + i, 3, rect.y + i);&lt;br /&gt;
          g.drawString(&amp;quot;&amp;quot; + (rect.y + i), 6, rect.y + i + 3);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      public Dimension getPreferredSize() {&lt;br /&gt;
        return new Dimension(25, (int) label.getPreferredSize()&lt;br /&gt;
            .getHeight());&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    rowheader.setBackground(Color.white);&lt;br /&gt;
    rowheader.setOpaque(true);&lt;br /&gt;
    JLabel columnheader = new JLabel() {&lt;br /&gt;
      public void paintComponent(Graphics g) {&lt;br /&gt;
        super.paintComponent(g);&lt;br /&gt;
        Rectangle r = g.getClipBounds();&lt;br /&gt;
        for (int i = 50 - (r.x % 50); i &amp;lt; r.width; i += 50) {&lt;br /&gt;
          g.drawLine(r.x + i, 0, r.x + i, 3);&lt;br /&gt;
          g.drawString(&amp;quot;&amp;quot; + (r.x + i), r.x + i - 10, 16);&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
      public Dimension getPreferredSize() {&lt;br /&gt;
        return new Dimension((int) label.getPreferredSize().getWidth(),&lt;br /&gt;
            25);&lt;br /&gt;
      }&lt;br /&gt;
    };&lt;br /&gt;
    columnheader.setBackground(Color.white);&lt;br /&gt;
    columnheader.setOpaque(true);&lt;br /&gt;
    scrollPane.setRowHeaderView(rowheader);&lt;br /&gt;
    scrollPane.setColumnHeaderView(columnheader);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.LOWER_LEFT_CORNER, corners[0]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.LOWER_RIGHT_CORNER, corners[1]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER, corners[2]);&lt;br /&gt;
    scrollPane.setCorner(JScrollPane.UPPER_RIGHT_CORNER, corners[3]);&lt;br /&gt;
    getContentPane().add(scrollPane);&lt;br /&gt;
    setSize(400, 300);&lt;br /&gt;
    setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    new Main();&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
  &lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.Container;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
import javax.swing.JTextArea;&lt;br /&gt;
import javax.swing.ScrollPaneConstants;&lt;br /&gt;
import javax.swing.WindowConstants;&lt;br /&gt;
public class Main extends JFrame {&lt;br /&gt;
  JTextArea textArea;&lt;br /&gt;
  public Main() {&lt;br /&gt;
    super();&lt;br /&gt;
    this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);&lt;br /&gt;
    Container contentPane = this.getContentPane();&lt;br /&gt;
    textArea = new JTextArea();&lt;br /&gt;
    JScrollPane pane = new JScrollPane(textArea, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,&lt;br /&gt;
        ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);&lt;br /&gt;
    contentPane.add(pane, BorderLayout.CENTER);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame f = new Main();&lt;br /&gt;
    f.setSize(300, 200);&lt;br /&gt;
    f.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;java&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
import java.awt.BorderLayout;&lt;br /&gt;
import java.awt.GridLayout;&lt;br /&gt;
import javax.swing.JButton;&lt;br /&gt;
import javax.swing.JFrame;&lt;br /&gt;
import javax.swing.JPanel;&lt;br /&gt;
import javax.swing.JScrollPane;&lt;br /&gt;
import javax.swing.ScrollPaneConstants;&lt;br /&gt;
public class MainClass extends JPanel {&lt;br /&gt;
  public MainClass() {&lt;br /&gt;
    setLayout(new BorderLayout());&lt;br /&gt;
    JPanel jp = new JPanel();&lt;br /&gt;
    jp.setLayout(new GridLayout(20, 20));&lt;br /&gt;
    int b = 0;&lt;br /&gt;
    for (int i = 0; i &amp;lt; 20; i++) {&lt;br /&gt;
      for (int j = 0; j &amp;lt; 20; j++) {&lt;br /&gt;
        jp.add(new JButton(&amp;quot;Button &amp;quot; + b));&lt;br /&gt;
        ++b;&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    // Add panel to a scroll pane.&lt;br /&gt;
    int v = ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED;&lt;br /&gt;
    int h = ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED;&lt;br /&gt;
    JScrollPane jsp = new JScrollPane(jp, v, h);&lt;br /&gt;
    // Add scroll pane to the content pane.&lt;br /&gt;
    add(jsp, BorderLayout.CENTER);&lt;br /&gt;
  }&lt;br /&gt;
  public static void main(String[] args) {&lt;br /&gt;
    JFrame frame = new JFrame();&lt;br /&gt;
    frame.getContentPane().add(new MainClass());&lt;br /&gt;
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);&lt;br /&gt;
    frame.setSize(200, 200);&lt;br /&gt;
    frame.setVisible(true);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- end source code --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>