কম্পিউটার

কিভাবে আমরা জাভাতে JTable ঘরে একটি JButton যোগ/সন্নিবেশ করতে পারি?


A JTable JComponent -এর একটি সাবক্লাস ক্লাস এবং এটি একাধিক সারি এবং কলামে প্রদর্শিত তথ্য সহ একটি টেবিল তৈরি করতে ব্যবহার করা যেতে পারে . যখন একটি JTable থেকে একটি মান নির্বাচন করা হয়, একটি TableModelEvent উত্পন্ন হয়, যা একটি টেবিলমডেল লিস্টেনার প্রয়োগ করে পরিচালনা করা হয় ইন্টারফেস. আমরা DefaultTableModel -এ কোড কাস্টমাইজ করে JTable ঘরে একটি JButton যোগ বা সন্নিবেশ করতে পারি অথবা AbstractTableModel এবং আমরা T প্রয়োগ করে কোডটি কাস্টমাইজ করতে পারি যোগ্য সেল রেন্ডারার ৷ ইন্টারফেস এবং getTableCellRendererComponent() ওভাররাইড করতে হবে পদ্ধতি।

উদাহরণ

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
public class JTableButtonTest extends JFrame {
   private JTable table;
   private JScrollPane scrollPane;
   public JTableButtonTest() {
      setTitle("JTableButton Test");
      TableCellRenderer tableRenderer;
      table = new JTable(new JTableButtonModel());
      tableRenderer = table.getDefaultRenderer(JButton.class);
      table.setDefaultRenderer(JButton.class, new JTableButtonRenderer(tableRenderer));
      scrollPane = new JScrollPane(table);
      add(scrollPane, BorderLayout.CENTER);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setLocationRelativeTo(null);
      setSize(400, 300);
      setVisible(true);
   }
   public static void main(String[] args) {
      new JTableButtonTest();
   }
}
class JTableButtonRenderer implements TableCellRenderer {
   private TableCellRenderer defaultRenderer;
   public JTableButtonRenderer(TableCellRenderer renderer) {
      defaultRenderer = renderer;
   }
   public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
      if(value instanceof Component)
         return (Component)value;
         return defaultRenderer.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
   }
}
class JTableButtonModel extends AbstractTableModel {
   private Object[][] rows = {{"Button1", new JButton("Button1")},{"Button2", new JButton("Button2")},{"Button3", new JButton("Button3")}, {"Button4", new JButton("Button4")}};
   private String[] columns = {"Count", "Buttons"};
   public String getColumnName(int column) {
      return columns[column];
   }
   public int getRowCount() {
      return rows.length;
   }
   public int getColumnCount() {
      return columns.length;
   }
   public Object getValueAt(int row, int column) {
      return rows[row][column];
   }
   public boolean isCellEditable(int row, int column) {
      return false;
   }
   public Class getColumnClass(int column) {
      return getValueAt(0, column).getClass();
   }
}

আউটপুট

কিভাবে আমরা জাভাতে JTable ঘরে একটি JButton যোগ/সন্নিবেশ করতে পারি?


  1. কিভাবে আমরা জাভাতে একটি JTable সেলের ভিতরে একটি JCheckBox যোগ/সন্নিবেশ করতে পারি?

  2. কিভাবে আমরা জাভাতে JButton এর HTML পাঠ্য বাস্তবায়ন করতে পারি?

  3. কিভাবে আমরা জাভাতে একটি JButton এ শর্টকাট কী সেট করতে পারি?

  4. কিভাবে আমরা জাভাতে একটি JMenu থেকে JTabbedPane এ নতুন ট্যাব যোগ করতে পারি?