কম্পিউটার

জাভাতে একটি JTableHeader এর প্রতিটি কলামে একটি টুলটিপ কিভাবে সেট করবেন?


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

উদাহরণ

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
public class JTableHeaderToolTipTest extends JPanel {
   private DefaultTableModel dmodel;
   private JTable table;
   private JScrollPane jsp;
   public JTableHeaderToolTipTest() {
      setLayout(new BorderLayout());
      String[] headers = {"Name", "Age", "Contact Number", "City"};
      String[] toolTips = {"Name of Emp", "Age of Emp", "Contact Number of Emp","City of Emp"};
      dmodel = new DefaultTableModel(headers, 4);
      table = new JTable(dmodel);
      ToolTipHeader tooltipHeader = new ToolTipHeader(table.getColumnModel());
      tooltipHeader.setToolTipStrings(toolTips);
      table.setTableHeader(tooltipHeader);
      jsp = new JScrollPane(table);
      add(jsp, BorderLayout.CENTER);
   }
   public static void main(String[] args) {
      JFrame frame = new JFrame("JTableHeaderToolTip Test");
      frame.getContentPane().add(new JTableHeaderToolTipTest(), BorderLayout.CENTER);
      frame.setSize(400, 250);
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setLocationRelativeTo(null);
      frame.setVisible(true);
   }
}
// implementation code to set a tooltip text to each column of JTableHeader
class ToolTipHeader extends JTableHeader {
   String[] toolTips;
   public ToolTipHeader(TableColumnModel model) {
      super(model);
   }
   public String getToolTipText(MouseEvent e) {
      int col = columnAtPoint(e.getPoint());
      int modelCol = getTable().convertColumnIndexToModel(col);
      String retStr;
      try {
         retStr = toolTips[modelCol];
      } catch (NullPointerException ex) {
         retStr = "";
      } catch (ArrayIndexOutOfBoundsException ex) {
         retStr = "";
      }
      if (retStr.length() < 1) {
         retStr = super.getToolTipText(e);
      }
      return retStr;
   }
   public void setToolTipStrings(String[] toolTips) {
      this.toolTips = toolTips;
   }
}

আউটপুট

জাভাতে একটি JTableHeader এর প্রতিটি কলামে একটি টুলটিপ কিভাবে সেট করবেন?


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

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

  3. কিভাবে আমরা জাভাতে একটি JPanel এ পটভূমির রঙ সেট করতে পারি?

  4. কিভাবে আমরা জাভাতে JCheckBox এ একটি সীমানা সেট করতে পারি?