কম্পিউটার

কিভাবে আমরা জাভাতে একটি JTable এর JTableHeader শব্দটি মোড়ানো করতে পারি?


JTableHeader

  • A JTableHeader JComponent -এর একটি সাবক্লাস ক্লাস।
  • যখন আমরা একটি JTable তৈরি করি অবজেক্ট, কনস্ট্রাক্টর একটি নতুন JTableHeader তৈরি করে টেবিল কম্পোনেন্টের হেডার পরিচালনা করতে অবজেক্ট।
  • JTableHeader টেবিল উপাদানের কলাম মডেল এর সাথে যুক্ত বস্তু যাতে এটিরUI প্রতিনিধি কলাম টেনে আনতে পারে এবং প্রতিটি কলামের হেডার সেল রেন্ডার করতে পারে।
  • একটি JTable একটি setTableHeader() সরবরাহ করে পদ্ধতি যা টেবিল হেডার কম্পোনেন্টের JTableHeader প্রতিষ্ঠা করে অবজেক্ট এবং একটি getTableHeader() পদ্ধতি যা টেবিল হেডার কম্পোনেন্টের JTableHeader এর একটি রেফারেন্স প্রদান করে অবজেক্ট .

আমরা শব্দ-র্যাপ টেবিল হেডার বাস্তবায়ন করতে পারি DefaultTableModel কাস্টমাইজ করে একটি JTable এর ক্লাস বা বিমূর্ত টেবিল মডেল ক্লাস।

উদাহরণ

import java.util.*;
import javax.swing.*;
import javax.swing.table.*;
public class WordWrappingTableHeaderTest extends JFrame {
   private JTable table;
   public WordWrappingTableHeaderTest() {
      setTitle("WordWrappingTableHeader Test");
      DefaultTableColumnModel tableColumnModel = new DefaultTableColumnModel() {
         public void addColumn(TableColumn column) {
            column.setHeaderRenderer(new JTableHeader().getDefaultRenderer());
            super.addColumn(column);
         }
      };
      table = new JTable();
      table.setFillsViewportHeight(true);
      table.setColumnModel(tableColumnModel);
      table.setModel(new DemoTableModel(Arrays.asList("Word Wrapping TableHeader Test", "Word Wrapping TableHeader Test", "Word Wrapping TableHeader Test"), 20));
      add(new JScrollPane(table));
      setSize(450, 300);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setResizable(false);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   class DemoTableModel extends AbstractTableModel {
      private ArrayList wrappedColumnNames = new ArrayList();
      private int numRows;
      DemoTableModel(List columnNames, int numRows) {
         for (String name: columnNames)
            wrappedColumnNames.add("" + name + "");
            this.numRows = numRows;
      }
      public int getRowCount() {
         return numRows;
      }
      public int getColumnCount() {
         return wrappedColumnNames.size();
      }
      public Object getValueAt(int rowIndex, int columnIndex) {
         return Integer.valueOf(10000 + (rowIndex + 1)*(columnIndex + 1));
      }
      public String getColumnName(int column) {
         return wrappedColumnNames.get(column);
      }
      public Class getColumnClass(int columnIndex) {
         return Integer.class;
      }
   }
   public static void main(String[] args) {
     new WordWrappingTableHeaderTest();
   }
}

আউটপুট

কিভাবে আমরা জাভাতে একটি JTable এর JTableHeader শব্দটি মোড়ানো করতে পারি?


  1. কিভাবে আমরা জাভাতে একটি JPanel এর paintComponent() পদ্ধতি প্রয়োগ করতে পারি?

  2. জাভাতে বর্ডারফ্যাক্টরি ব্যবহার করে আমরা কীভাবে বিভিন্ন সীমানা প্রয়োগ করতে পারি?

  3. কিভাবে আমরা জাভাতে একটি JTextArea এর ভিতরে লাইন মোড়ানো এবং শব্দ মোড়ানো পাঠ্য বাস্তবায়ন করতে পারি?

  4. কিভাবে আমরা জাভাতে একটি JToggleButton বাস্তবায়ন করতে পারি?