Перейти к контенту

Применение корректировки к следующей колонке, когда ширина столбца изменяется в Java Swing

Чтобы применить корректировку только к следующей колонке, когда ширина столбца изменяется в Java Swing в Java, используйте setAutoResizeMode и установите режим. Режим здесь будет AUTO_RESIZE_NEXT_COLUMN. Это позволит вам настроить только следующий столбец, даже если какой-либо из заголовка столбца тащится, чтобы изменить размер.

Давайте сначала рассмотрим пример создания таблицы —

 

Пример

package my;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class SwingDemo {
   public static void main(String[] argv) throws Exception {
      DefaultTableModel tableModel = new DefaultTableModel();
      JTable table = new JTable(tableModel);
      tableModel.addColumn("Technology");
      tableModel.addColumn("BCA");
      tableModel.addColumn("MCA");
      tableModel.addColumn("Lectures");
      // applying adjustments to the next column only
      table.setAutoResizeMode(JTable.AUTO_RESIZE_NEXT_COLUMN);
      tableModel.addRow(new Object[] { "F#", "Yes", "No", "20"});
      tableModel.addRow(new Object[] { "Blockchain", "Yes", "No", "30"});
      tableModel.addRow(new Object[] { "SharePoint", "Yes", "Yes", "25"});
      tableModel.addRow(new Object[] { "AWS", "No", "Yes", "25"});
      tableModel.addRow(new Object[] { "Python", "Yes", "No", "20"});
      tableModel.addRow(new Object[] { "Scala", "Yes", "No", "30"});
      tableModel.addRow(new Object[] { "Swift", "No", "Yes", "35"});
      tableModel.addRow(new Object[] { "C#", "Yes", "Yes", "50"});
      tableModel.addRow(new Object[] { "NodeJS", "No", "Yes", "40"});
      tableModel.addRow(new Object[] { "MVC", "Yes", "No", "30"});
      tableModel.addRow(new Object[] { "ASP.NET", "Yes", "Yes", "35"});
      tableModel.addRow(new Object[] { "Java", "Yes", "No", "55"});
      tableModel.addRow(new Object[] { "jQuery", "Yes", "Yes", "30"});
      Font font = new Font("Verdana", Font.PLAIN, 12);
      table.setFont(font);
      JFrame frame = new JFrame();
      frame.setSize(600, 400);
      frame.add(new JScrollPane(table));
      frame.setVisible(true);
   }
}

Итог

Теперь, если вы будете изменять размер любого из столбцов (в данном случае BCA), то все изменения будут влиять на саму колонку, а также следующий столбец (в данном случае, MCA) —

Оцени статью

Средняя оценка / 5. Количество голосов:

Спасибо, помогите другим - напишите комментарий, добавьте информации к статье.

Или поделись статьей

Видим, что вы не нашли ответ на свой вопрос.

Помогите улучшить статью.

 

Пока нет комментариев.

Добавить комментарий

Ваш e-mail не будет опубликован.

СайдбарКомментарии (0)