কম্পিউটার টিউটোরিয়াল

জাভাতে JTable-এর প্রতিটি কলামের প্রস্থ কীভাবে পরিবর্তন করবেন?

JTable

  • একটি JTable জটিল ডেটা স্ট্রাকচার প্রদর্শনের জন্য JComponent-এর একটি সাবক্লাস।
  • একটি JTable ডেটা রো ও কলাম-এ প্রদর্শনের জন্য মডেল ভিউ কন্ট্রোলার (MVC) ডিজাইন প্যাটার্ন অনুসরণ করে।
  • DefaultTableModel ক্লাস AbstractTableModel-এक्सটেন্ড করে এবং এটি JTable-এ ডাইনামিক্যালি রো ও কলাম যোগ করতে ব্যবহৃত হয়।
  • DefaultTableCellRenderer ক্লাস JLabel ক্লাস এক্সটেন্ড করে এবং এটি JTable সেল-এ ইমেজ, রঙিন টেক্সট ইত্যাদি যোগ করতে ব্যবহৃত হয়।
  • একটি JTable TableModelListener, TableColumnModelListener, ListSelectionListener, CellEditorListener, RowSorterListener ইন্টারফেস জেনারেট করতে পারে।
  • ডিফল্টভাবে JTable-এর প্রস্থ ফিক্সড, কিন্তু table.getColumnModel().getColumn().setPreferredWidth() মেথড ব্যবহার করে প্রতিটি কলামের প্রস্থ পরিবর্তন করা যায়।

উদাহরণ

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

public class JTableTest extends JFrame { 
    private JTable table; 
    private JScrollPane scrollPane; 
    private DefaultTableModel model; 
    private DefaultTableCellRenderer cellRenderer; 
    
    public JTableTest() { 
        setTitle("JTable Test"); 
        setLayout(new FlowLayout()); 
        scrollPane = new JScrollPane(); 
        JTable table = new JTable(); 
        scrollPane.setViewportView(table); 
        model = (DefaultTableModel)table.getModel(); 
        model.addColumn("S.No"); 
        model.addColumn("First Name"); 
        model.addColumn("Last Name"); 
        model.addColumn("Email"); 
        model.addColumn("Contact"); 
        
        for(int i = 0;i < 4; i++) { 
            model.addRow(new Object[0]); 
            model.setValueAt(i+1, i, 0); 
            model.setValueAt("Tutorials", i, 1); 
            model.setValueAt("Point", i, 2); 
            model.setValueAt("@tutorialspoint.com", i, 3); 
            model.setValueAt("123456789", i, 4); 
        } 
        
        // প্রতিটি কলামের জন্য কলাম প্রস্থ সেট করুন 
        table.getColumnModel().getColumn(0).setPreferredWidth(5); 
        table.getColumnModel().getColumn(3).setPreferredWidth(100); 
        cellRenderer = new DefaultTableCellRenderer(); 
        cellRenderer.setHorizontalAlignment(JLabel.CENTER); 
        table.getColumnModel().getColumn(0).setCellRenderer(cellRenderer); 
        add(scrollPane); 
        setSize(475, 250); 
        setResizable(false); 
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
        setLocationRelativeTo(null); 
        setVisible(true); 
    } 
    
    public static void main(String[] args) { 
        new JTableTest(); 
    } 
}

আউটপুট

জাভাতে JTable-এর প্রতিটি কলামের প্রস্থ কীভাবে পরিবর্তন করবেন?

  1. জাভাতে JTable-কে নির্দিষ্ট কলামে সর্ট করা

  2. মাইক্রোসফট এক্সেলে সারি ও কলামের উচ্চতা-প্রস্থ পরিবর্তন করা

  3. Python 3.3-এ ttk.Treeview কলামের প্রস্থ এবং ওজন (weight) কীভাবে পরিবর্তন করবেন?

  4. এক্সেলে ভার্টিক্যাল কলামকে হরিজেন্টাল সারিতে রূপান্তর: ৫টি সহজ পদ্ধতি