Графический интерфейс Java с JTable - PullRequest
0 голосов
/ 01 мая 2019

Я отображаю данные в JTable через событие мыши в JList.Я хочу знать, как бы я изменил цвет шрифта определенных данных после того, как пользователь щелкнул в JLIst, и вот фотография для желаемого результата

enter image description here

list.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseClicked(MouseEvent arg0) {

            int solutionindex =list.getSelectedIndex();
            if(solutionindex==0) {

                for (int i=0;i<table.getRowCount();i++) {
                    for (int j=0;j<table.getColumnCount();j++) {

                            table.setValueAt(b.charAt(i, j), i,j);


                    }// end of second for loop

                }// end of for loop
            }               
           else {
                for (int i=0;i<table.getRowCount();i++) {
                    for (int j=0;j<table.getColumnCount();j++) {                 


        table.setValueAt(solutions.get(solutionindex1).getBoard().charAt(i, j), i,j);
                    }// end of second for loop

                }// end of for loop

            }







        table.setDefaultRenderer(String.class, new DefaultTableCellRenderer(){
         @Override
         public java.awt.Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row,int column) {
             java.awt.Component c = super.getTableCellRendererComponent(table,value,isSelected,hasFocus,row,column);
             c.setForeground(Color.red);
             return c;
         }

     });

1 Ответ

1 голос
/ 01 мая 2019

Используйте ListSelectionModel вместо MouseListener на JList.(JList где-то вдоль линии будет использовать MouseListener для изменения состояния. Это происходит до или после того, как вы прослушиваете прослушиватель? Зависит. Может измениться при реализации и даже во время выполнения (что действительно сбивает с толку).)

Переключите объект в таблице [модель] с Character на новый тип, содержащий текст и цвет переднего плана.В средстве визуализации ячеек таблицы приведите объект ячейки к правильному типу и используйте его цвет в setForeground.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...