Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

ความแตกต่างระหว่าง JScrollBar และ JScrollPane ใน Java

JScrollBar เป็น Component ไม่จัดการ Event เอง ในขณะที่ JScrollPane เป็น Container จัดการ Event เองและเลื่อนเอง JScrollBar ไม่สามารถมี JScrollPane แต่ JScrollPane สามารถมี JScrollBar ได้

JScrollBar

  • อ็อบเจกต์ JScrollBar ใช้เพิ่ม Scrollbar แนวนอนและแนวตั้ง ให้ผู้ใช้เลือกค่าระหว่าง Min/Max
  • JScrollBar class เป็นการ implement Scrollbar สืบทอดจาก JComponent

ไวยากรณ์

public class JScrollBar extends JComponent implements Adjustable, Accessible

ตัวอย่าง JScrollBar

import javax.swing.*;
import java.awt.*;

public class JScrollBarTest extends JFrame {
    JScrollBarTest() {
        setTitle("JScrollBar Test");
        JScrollBar jsb = new JScrollBar();
        setLayout(new FlowLayout());
        add(jsb);
        setSize(350, 275);
        setLocationRelativeTo(null);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
    }

    public static void main(String args[]) {
        new JScrollBarTest();
    }
}

ผลลัพธ์

ความแตกต่างระหว่าง JScrollBar และ JScrollPane ใน Java

JScrollPane

  • JScrollPane ใช้ทำมุมมองที่เลื่อนได้ของคอมโพเนนต์
  • Scroll Pane เป็นอ็อบเจกต์ของ JScrollPane ขยายจาก JComponent
  • ขนาดหน้าจอจำกัด ใช้ Scroll Pane แสดงคอมโพเนนต์ใหญ่ หรือที่เปลี่ยนขนาดไดนามิก
  • เมธอดสำคัญ: setColumnHeaderView(), setRowHeaderView(), setViewportView()

ตัวอย่าง JScrollPane

import javax.swing.*;
import java.awt.*;

public class JScrollPaneTest extends JFrame {
    JScrollPaneTest() {
        setTitle("JScrollPane Test");
        JPanel panel = new JPanel();
        panel.setLayout(new BorderLayout());
        JScrollPane jsp = new JScrollPane(panel,
            ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,
            ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);
        add(jsp);
        setSize(350, 275);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLocationRelativeTo(null);
        setVisible(true);
    }

    public static void main(String[] args) {
        new JScrollPaneTest();
    }
}

ผลลัพธ์

ความแตกต่างระหว่าง JScrollBar และ JScrollPane ใน Java