why DefaultTableCellRenderer never gets called?











up vote
0
down vote

favorite












I'm confused to why the class ImageRenderer() never gets called? I checked through the console and it didn't print the "The class ImageRenderer is here". Is there any specific way to call the class?



...
private JTable createTable(BufferedImage images){
String headers = {"Img1","Img2","Img3","Img4","img5" };
final Object allData = {images,images,images,images,images};
int rows = 1, cols = 5;
Object data = new Object[rows][cols];

for(int row=0; row<rows; row++)
for(int col = 0; col < cols; col++) {
data[row][col] = allData[row][col];
}

//create the model
DefaultTableModel model = new DefaultTableModel(data, headers) {
public Class getColumnClass(int col) {
return allData[col][0].getClass();
}
public boolean isCellEditable(int row, int col){
return allData[col][row] != allData[0][row];
}
};

//create the table
JTable table = new JTable(model);

// I called the "class ImageRenderer" here.
table.setDefaultRenderer(String.class, new ImageRenderer());
...
...
} );

return table;
}


I tried to call this class but failed



class ImageRenderer extends DefaultTableCellRenderer {  
public Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row, int column){
super.getTableCellRendererComponent(table, value, isSelected,hasFocus, row, column);

//this code to test whether the "class ImageRenderer" get called or not
System.out.println("The class ImageRenderer is here");

setIcon(new ImageIcon((BufferedImage)value));
setHorizontalAlignment(JLabel.CENTER);
setText("");
return this;
}
}









share|improve this question







New contributor




newbie is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
























    up vote
    0
    down vote

    favorite












    I'm confused to why the class ImageRenderer() never gets called? I checked through the console and it didn't print the "The class ImageRenderer is here". Is there any specific way to call the class?



    ...
    private JTable createTable(BufferedImage images){
    String headers = {"Img1","Img2","Img3","Img4","img5" };
    final Object allData = {images,images,images,images,images};
    int rows = 1, cols = 5;
    Object data = new Object[rows][cols];

    for(int row=0; row<rows; row++)
    for(int col = 0; col < cols; col++) {
    data[row][col] = allData[row][col];
    }

    //create the model
    DefaultTableModel model = new DefaultTableModel(data, headers) {
    public Class getColumnClass(int col) {
    return allData[col][0].getClass();
    }
    public boolean isCellEditable(int row, int col){
    return allData[col][row] != allData[0][row];
    }
    };

    //create the table
    JTable table = new JTable(model);

    // I called the "class ImageRenderer" here.
    table.setDefaultRenderer(String.class, new ImageRenderer());
    ...
    ...
    } );

    return table;
    }


    I tried to call this class but failed



    class ImageRenderer extends DefaultTableCellRenderer {  
    public Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row, int column){
    super.getTableCellRendererComponent(table, value, isSelected,hasFocus, row, column);

    //this code to test whether the "class ImageRenderer" get called or not
    System.out.println("The class ImageRenderer is here");

    setIcon(new ImageIcon((BufferedImage)value));
    setHorizontalAlignment(JLabel.CENTER);
    setText("");
    return this;
    }
    }









    share|improve this question







    New contributor




    newbie is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.






















      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I'm confused to why the class ImageRenderer() never gets called? I checked through the console and it didn't print the "The class ImageRenderer is here". Is there any specific way to call the class?



      ...
      private JTable createTable(BufferedImage images){
      String headers = {"Img1","Img2","Img3","Img4","img5" };
      final Object allData = {images,images,images,images,images};
      int rows = 1, cols = 5;
      Object data = new Object[rows][cols];

      for(int row=0; row<rows; row++)
      for(int col = 0; col < cols; col++) {
      data[row][col] = allData[row][col];
      }

      //create the model
      DefaultTableModel model = new DefaultTableModel(data, headers) {
      public Class getColumnClass(int col) {
      return allData[col][0].getClass();
      }
      public boolean isCellEditable(int row, int col){
      return allData[col][row] != allData[0][row];
      }
      };

      //create the table
      JTable table = new JTable(model);

      // I called the "class ImageRenderer" here.
      table.setDefaultRenderer(String.class, new ImageRenderer());
      ...
      ...
      } );

      return table;
      }


      I tried to call this class but failed



      class ImageRenderer extends DefaultTableCellRenderer {  
      public Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row, int column){
      super.getTableCellRendererComponent(table, value, isSelected,hasFocus, row, column);

      //this code to test whether the "class ImageRenderer" get called or not
      System.out.println("The class ImageRenderer is here");

      setIcon(new ImageIcon((BufferedImage)value));
      setHorizontalAlignment(JLabel.CENTER);
      setText("");
      return this;
      }
      }









      share|improve this question







      New contributor




      newbie is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      I'm confused to why the class ImageRenderer() never gets called? I checked through the console and it didn't print the "The class ImageRenderer is here". Is there any specific way to call the class?



      ...
      private JTable createTable(BufferedImage images){
      String headers = {"Img1","Img2","Img3","Img4","img5" };
      final Object allData = {images,images,images,images,images};
      int rows = 1, cols = 5;
      Object data = new Object[rows][cols];

      for(int row=0; row<rows; row++)
      for(int col = 0; col < cols; col++) {
      data[row][col] = allData[row][col];
      }

      //create the model
      DefaultTableModel model = new DefaultTableModel(data, headers) {
      public Class getColumnClass(int col) {
      return allData[col][0].getClass();
      }
      public boolean isCellEditable(int row, int col){
      return allData[col][row] != allData[0][row];
      }
      };

      //create the table
      JTable table = new JTable(model);

      // I called the "class ImageRenderer" here.
      table.setDefaultRenderer(String.class, new ImageRenderer());
      ...
      ...
      } );

      return table;
      }


      I tried to call this class but failed



      class ImageRenderer extends DefaultTableCellRenderer {  
      public Component getTableCellRendererComponent(JTable table,Object value,boolean isSelected,boolean hasFocus,int row, int column){
      super.getTableCellRendererComponent(table, value, isSelected,hasFocus, row, column);

      //this code to test whether the "class ImageRenderer" get called or not
      System.out.println("The class ImageRenderer is here");

      setIcon(new ImageIcon((BufferedImage)value));
      setHorizontalAlignment(JLabel.CENTER);
      setText("");
      return this;
      }
      }






      jtable render tablemodel






      share|improve this question







      New contributor




      newbie is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question







      New contributor




      newbie is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question






      New contributor




      newbie is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked yesterday









      newbie

      11




      11




      New contributor




      newbie is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      newbie is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      newbie is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





























          active

          oldest

          votes











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });






          newbie is a new contributor. Be nice, and check out our Code of Conduct.










           

          draft saved


          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53265859%2fwhy-defaulttablecellrenderer-never-gets-called%23new-answer', 'question_page');
          }
          );

          Post as a guest





































          active

          oldest

          votes













          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          newbie is a new contributor. Be nice, and check out our Code of Conduct.










           

          draft saved


          draft discarded


















          newbie is a new contributor. Be nice, and check out our Code of Conduct.













          newbie is a new contributor. Be nice, and check out our Code of Conduct.












          newbie is a new contributor. Be nice, and check out our Code of Conduct.















           


          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53265859%2fwhy-defaulttablecellrenderer-never-gets-called%23new-answer', 'question_page');
          }
          );

          Post as a guest




















































































          Popular posts from this blog

          How to send String Array data to Server using php in android

          Title Spacing in Bjornstrup Chapter, Removing Chapter Number From Contents

          Is anime1.com a legal site for watching anime?