powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Несколько вопросов про JTable.
3 сообщений из 3, страница 1 из 1
Несколько вопросов про JTable.
    #33725219
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пытаюсь заставить колнку таблицы отображать текст в формате HTML.
Вот кусок моей модели таблици:
Код: plaintext
1.
2.
3.
4.
 public  Object getValueAt( int  row,  int  column){
         this .rows[row] = row;
         return  "<b>row:</b> " +  this .rows[row] + " column: " + column;
    }
Вот мой рендерер (целиком):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
 package  bqedit;

 import  java.awt.Component;
 import  javax.swing.JTextPane;
 import  javax.swing.table.TableCellRenderer;
 import  javax.swing.JTable;

 public   class  QuestionCellRenderer  extends  JTextPane  implements  TableCellRenderer{
    
    /** Creates a new instance of QuestionCellRenderer */
     public  QuestionCellRenderer() {
    }
    
     public  Component getTableCellRendererComponent(JTable table, Object value,  boolean  isSelected,  boolean  hasFocus,  int  row,  int  Column){
         this .setContentType("text/html");
         this .setText((String) value);
        System.out.println((String) value);
         return   this ;
    }
    
}
Вот я вешаю его:
Код: plaintext
1.
 this .table.setDefaultRenderer(String. classnew  QuestionCellRenderer());
А вот что получилось:
...
Рейтинг: 0 / 0
Несколько вопросов про JTable.
    #33725244
Sarin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Простите. Разобрался.

Если кто столкнётся: в модели таблицы необходимо определять мето getColumnClass.
...
Рейтинг: 0 / 0
Несколько вопросов про JTable.
    #33725280
g
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
g
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
 package  test.swing.sarin;

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

 public   class  HTMLTable  extends  JFrame {
	 public  HTMLTable() {
		setTitle("HTML in cells");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setSize( 200 ,  120 );

		JTable table =  new  JTable( new  MyTableModel());
		table.setDefaultRenderer(JTextPane. class ,  new  MyCellRenderer());
		add(table);

		setVisible(true);
	}

	 public   static   void  main(String[] args) {
		EventQueue.invokeLater( new  Runnable() {
			 public   void  run() {

				 new  HTMLTable();
			}
		});
	}

	 class  MyTableModel  extends  DefaultTableModel {
		 public  Object getValueAt( int  row,  int  column) {
			 return  "<html><body><b>Bold text</b> in [" + row + ", " + column + "]";
		}

		 public   int  getRowCount() {
			 return   5 ;
		}

		 public   int  getColumnCount() {
			 return   1 ;
		}
	}

	 class  MyCellRenderer  implements  TableCellRenderer {
		 public  Component getTableCellRendererComponent(JTable table, Object value,  boolean  isSelected,  boolean  hasFocus,  int  row,  int  column) {
			JTextPane pane =  new  JTextPane();
			pane.setContentType("text/html");
			pane.setText((String) value);
			 return  pane;
		}
	}
}
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Несколько вопросов про JTable.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]