Set Cell Editor Image and Caption to Rows in ALV

Hi,
i want to set cell editor different elements to a column of alv. Please follow the link of screenshot.
[www.menstasarim.com/mmesut/state1.JPG]
Can somebody help me pls?
Thanks.

yes it is possible, basically you have to change the cell desing (for background colors) and insert the icons based on some condition.
lr_col = lr_config_model->if_salv_wd_column_settings~get_column( 'CARRID' ).
  lr_col->SET_CELL_DESIGN( '02' ) .
this will change the background color, and you have to call another method to insert the icon.

Similar Messages

  • I Have a UITableView with 17 row. in last 17Th row i applyed cell.selectionStyle = UITableViewCellSelectionStyleNone;  and in this row i also put UIButton with Image -  my QUESTION IS that i want in 17Th row when user tapped Image on button is hide and wh

    I Have a UITableView with 17 row. in last 17Th row i applyed cell.selectionStyle = UITableViewCellSelectionStyleNone;
    and in this row i also put UIButton with Image …
    my QUESTION IS that i want in 17Th row when user tapped Image on button. then Image is hide and when user again tapped then image is shown …
    so PlZ…help me how can i put logic..
    Thanks FrNdZZzzzz…

    Sign in:
    https://developer.apple.com/devforums/
    If you're not a developer, you need to join first:
    https://developer.apple.com/programs/register/

  • Rollover Images and Captions

    Can anyone give me a short, step by step way to
    create rollover images with captions. I couldn't manage to get that
    done, and when I read the Help screens within the application, it
    didn't help either.
    In particular, here was the problem: I was in Storyboard with
    the slide highlighted that I wanted to add the rollover image and
    caption. When I went up to the Insert drop-down menu and clicked on
    Rollover Images, there were no images; I was simply taken to My
    Documents.
    I hope somebody can help. I've spent more than 4 hours trying
    make this work. I'm SURE it's some little detail that I've failed
    to pay attention to.
    THANK YOU!
    Dean

    Hi Dean,
    The "little detail that (you) failed to pay attention to" is
    just that. In order to insert an image, you have to select the
    image to insert. Use Windows Explorer (from \\My Documents\) to
    navigate to \\My Documents\My Pictures\ or whereever else you keep
    the image you wish to insert, and select it. Understand, it is up
    to you to provide the image . . . it's not like you are selecting
    from Captivate's own image gallery (though that is a cool idea, now
    that I think of it - LOL!)
    Your question indicates to me there might be some confusion
    about what you want. You said you want "rollover images with
    captions". There are rollover images which are just images to which
    a mouseover action has been applied, and there are rollover
    captions which are just normal captions to which a mouseover action
    has been applied ... but there are no rollover images
    with captions. The only way to have a rollover display a
    caption is to create it yourself. And the "step-by-step" for doing
    that is totally dependent on which image editor you are using
    (Photoshop, Paintshop Pro, Paint, etc.). But the gist of it is
    below.
    1) Open the image in your image editor - or create it there
    2) Expand the canvas to create extra "blank" space on the
    image (for the caption)
    3) Use the "Text" tool to create your caption text and add it
    to that blank space.
    4) Save the image - BMP format works very well, but any
    format supported by Captivate.
    5) Close the image editor
    6) Open or switch to Captivate and the slide on which you
    want to place it.
    7) Select "Insert > Rollover Image"
    8) Select the image (with its included caption)
    9) Set its attributes and position it on the slide.
    Hope this helps. The reason you wont' find this in the "Help"
    files is because it is a creative use of images that is not a
    supported function of Captivate itself. If you would like to see
    future versions of Captivate support the creation of
    images-with-captions, the way to do it is to submit it as a feature
    request. The form to do that
    is
    located at this link
    Hope this helps.

  • Images and caption for epub

    Hi,
    I have a lot of pictures with captions in my ebook and want them to appear together on the same page. My pictures are anchored in the center of the page so are the captions.
    I tried to group them but still the image and caption appears most of the time on a separate page.  I even tried to put the caption on top of the picture but still the caption and image are on a separate page.
    Any idea?
    Thanks a lot!!

    here it is:
    I get this:
    and I want this:
    Thanks for your help.

  • Setting cell editor for individual cell in JTable

    Hi there,
    I want to provide individual cell editor for my JTable. Basically, my JTable shows property names and values. I want to show different cell editors for different properties.
    I followed the advice in this post:
    http://forum.java.sun.com/thread.jsp?forum=57&thread=423318
    but I have a question:
    I looked at the code of DefaultCellEditor. It just has a single editor component (the one provided in the constructor), so all the methods use the same component and certain aspects are customized for the type of component. Again, there can be only one type of component at a time.The problem that I am facing is that I will have different components for different row/column of the same table. So how do I implement some of the methods (for example, getCellEditorValue()), when I have multiple editor components?
    Also, how do I commit changes made by the user?
    I am extremely confused.
    Someone please help!
    Thanks.

    Actually, that's what I am currently doing.
    Here is my cell editor class:
    public class ObjectPropertyEditor extends DefaultCellEditor
           public ObjectPropertyEditor()
              super(new JTextField());
              Vector list = new Vector();
              list.add("Yes");
              list.add("No");
             myCombo = new JComboBox(list);
          public Component getTableCellEditorComponent(JTable table, Object value,
              boolean isSelected, int row, int column)
             String colName = (String)table.getValueAt(row,0);
             if(colName.equalsIgnoreCase("Leaf-Node?")) //if it is the "Leaf" property, return the combo box as the editor
                 return myCombo;
            else  //for all other properties, use JTextField of the super class
                return super.getTableCellEditorComponent(table,value,isSelected,row,column);
        private JComboBox myCombo;
    }The problem I have is that when I select a new item from the combo box, the new selection is not reflected in the tableModel. I don't know how I can achive that. I think I need the functionalities that DefaultCellEditor gives to its delegate when its constructor arguments is a combo box. But how can I get two different sets of functionalities (JTextField and JComboBox) ?
    Please help!
    Thanks.

  • CS5 - Exporting images and captions to epub

    I am exporting an inDesign document to epub and would like to create image captions that stay with their images as the text flows across page breaks.
    I am anchoring the images inline to the text, and the images are fine. When it comes to the captions I am grouping the images with manually created captions in text boxes (prior to anchoring). The captions stay with the images while in inDesign, but when exported to epub the captions float separately and onto the next page without their images. And I have tried the built in live/static captions, but am having the same issue.
    What are your recommendations for creating captions that stay with  the images in an epub?
    Thanks!

    There is no way to get InDesign to automatically keep captions to images when exporting to epub other than making the caption a part of the image itself.
    If you want to keep the caption live text then you have to edit the CSS. How to get this to work depends largely on what devices you plan on publishing your epub to.

  • How to transpose rows to columns and columns to rows in alv grid

    can u plz tell me in alv grid how to
    display data from itab having data
    1
    2
    3 and so on
    how to print in alv in a single row ie
    1 2 3 and so on

    chk this code...
    REPORT  Z_TRANSPOSEALV                                    .
    * Type pools declaration for ALV
    TYPE-POOLS: slis.
    *Declarations for ALV, dynamic table and col no for transpose
    DATA:    l_col    TYPE sy-tabix,
             l_structure   TYPE REF TO data,
             l_dyntable    TYPE REF TO data,
             wa_lvc_cat  TYPE lvc_s_fcat,
             lt_lvc_cat  TYPE lvc_t_fcat,
             lt_fieldcatalogue     TYPE slis_t_fieldcat_alv,
             wa_fieldcat TYPE slis_fieldcat_alv,
             lt_fieldcat TYPE slis_t_fieldcat_alv,
             lt_layout   TYPE slis_layout_alv.
    *Field symbols declarations
    FIELD-SYMBOLS :
      <header>    TYPE ANY,
      <dynheader> TYPE ANY,
      <dyndata>   TYPE ANY,
      <ls_table>      TYPE ANY,
      <dynamictable>      TYPE STANDARD TABLE,
      <it_table> TYPE STANDARD TABLE.
    *Input the name of the table
    PARAMETERS p_table TYPE dd02l-tabname OBLIGATORY.
    *Initialization event
    INITIALIZATION.
    *Start of selection event
    START-OF-SELECTION.
    * Create internal table of dynamic type
      CREATE DATA l_dyntable TYPE STANDARD TABLE OF (p_table)
                           WITH NON-UNIQUE DEFAULT KEY.
      ASSIGN l_dyntable->* TO <it_table>.
    *select statement to select data from the table as input into
    *our dynamic internal table.
    *Here i have restricted only till 5 rows.
    *You can set a variable and give no of rows to be fetched
    *The variable can be set in your select statement
    SELECT * INTO CORRESPONDING FIELDS OF TABLE <it_table>
                    FROM (p_table) up to 5 rows.
    *Fieldcatalogue definitions
      wa_lvc_cat-fieldname = 'COLUMNTEXT'.
      wa_lvc_cat-ref_table = 'LVC_S_DETA'.
      APPEND wa_lvc_cat TO lt_lvc_cat.
      wa_fieldcat-fieldname = 'COLUMNTEXT'.
      wa_fieldcat-ref_tabname = 'LVC_S_DETA'.
      wa_fieldcat-key  = 'X'..
      APPEND wa_fieldcat TO lt_fieldcat.
      DESCRIBE TABLE <it_table>.
      DO sy-tfill TIMES.
    *   For each line, a column 'VALUEx' is created in the fieldcatalog
    *   Build Fieldcatalog
        WRITE sy-index TO wa_lvc_cat-fieldname LEFT-JUSTIFIED.
        CONCATENATE 'VALUE' wa_lvc_cat-fieldname
               INTO wa_lvc_cat-fieldname.
        wa_lvc_cat-ref_field = 'VALUE'.
        wa_lvc_cat-ref_table = 'LVC_S_DETA'.
        APPEND wa_lvc_cat TO lt_lvc_cat.
    *   Build Fieldcatalog
        CLEAR wa_fieldcat.
        wa_fieldcat-fieldname = wa_lvc_cat-fieldname.
        wa_fieldcat-ref_fieldname = 'VALUE'.
        wa_fieldcat-ref_tabname = 'LVC_S_DETA'.
        APPEND wa_fieldcat TO lt_fieldcat.
      ENDDO.
    * Create dynamic internal table
      CALL METHOD cl_alv_table_create=>create_dynamic_table
        EXPORTING
          it_fieldcatalog = lt_lvc_cat
        IMPORTING
          ep_table        = l_dyntable.  ASSIGN l_dyntable->* TO <dynamictable>.
    * Create structure as structure of the internal table
      CREATE DATA l_structure LIKE LINE OF <dynamictable>.
      ASSIGN l_structure->* TO <header>.
    * Create structure = structure of the internal table
      CREATE DATA l_structure LIKE LINE OF <it_table>.
      ASSIGN l_structure->* TO <ls_table>.
    * Create field catalog from our table structure
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
        EXPORTING
          i_structure_name       = p_table
        CHANGING
          ct_fieldcat            = lt_fieldcatalogue
        EXCEPTIONS
          inconsistent_interface = 1
          program_error          = 2
          OTHERS                 = 3.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.  DESCRIBE TABLE lt_fieldcatalogue.
    * Fill the internal to display <dynamictable>
      DO sy-tfill TIMES.
        IF sy-index = 1.
          READ TABLE lt_fieldcatalogue INTO wa_fieldcat INDEX 1.
        ENDIF.
    *   For each field of it_table
        ASSIGN COMPONENT 1 OF STRUCTURE <header> TO <dynheader>.
        IF sy-subrc NE 0. EXIT .ENDIF.
        READ TABLE lt_fieldcatalogue INTO wa_fieldcat INDEX sy-index.
    *   Fill 1st column
        <dynheader> = wa_fieldcat-seltext_m.
        IF <dynheader> IS INITIAL.
          <dynheader> = wa_fieldcat-fieldname.
        ENDIF.
    *Filling the other columns
        LOOP AT <it_table> INTO <ls_table>.
          l_col = sy-tabix + 1.
          ASSIGN COMPONENT sy-index OF STRUCTURE <ls_table> TO <dyndata>.
          IF sy-subrc NE 0. EXIT .ENDIF.
          ASSIGN COMPONENT l_col OF STRUCTURE <header> TO
    <dynheader>.
          IF sy-subrc NE 0. EXIT .ENDIF.
          WRITE <dyndata> TO <dynheader> LEFT-JUSTIFIED.
        ENDLOOP.
        APPEND <header> TO <dynamictable>.
      ENDDO.
    *Layout for ALV output
      lt_layout-zebra = 'X'.
      lt_layout-no_colhead = 'X'..
      lt_layout-colwidth_optimize ='X'.
      lt_layout-window_titlebar = 'ALV GRID TRANSPOSED'.
    *ALV Grid output for display
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          is_layout   = lt_layout
          it_fieldcat = lt_fieldcat
        TABLES
          t_outtab    = <dynamictable>.

  • How to Handle the chaned rows and new added rows into ALV in OPPS alv .

    Hi All,
    I have developed a [program in which i am able to append a row or change and existing row.
    when i press save button and handle the user command in PAI of Screen, in the internal table of ALV some records are missing which are inserted in the last.
    Could You please guide me how can i handle the change rows and appended rows
    Regards,
    Deepak

    Hi ,
    as avinash said , u need to use check_changed_data Method in order to get all records ,
    code will be like this
    PAI
    user-command.
    case sy-ucomm.
    when 'ENTER'.
    call method G_grid->check_changed_data.
    call method g_grid->refresh_table_display.
    when 'SAVE'.
    call method G_grid->check_changed_data.
    call method g_grid->refresh_table_display.

  • Setting JTable cell editor

    Hallo,
    I have troubles setting jtable cell edtior. when i run code below, editor stays unchnaged.
    Do you know where's the problem, please (except in programmer^_^) ???
    import java.awt.*;
    import javax.swing.*;
    import javax.swing.table.DefaultTableModel;
    public class Test extends JFrame {
        JTable table;
        Test() {
            // Create table model
            table = new JTable();
            table.setModel(new DefaultTableModel(
                new Object[][] {
                    { Boolean.TRUE, Integer.valueOf(10) },
                    { "Hallo!", Boolean.FALSE },
                }, new String[] { "Col1", "Col2" }));
            // Setup frame a little
            setLayout(new BorderLayout());
            setBounds(new Rectangle(300,300,200,100));
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            add(table,BorderLayout.CENTER);
             * Two calls below have no effect:-(
             * What did i wrong?
            // set cell editor for all cells
            table.setCellEditor(new DefaultCellEditor(
                    new JComboBox(new String[] { "0", "1" }) ));
            // Use checkbox for booleans
            table.setDefaultEditor(Boolean.class, new DefaultCellEditor(
                    new JCheckBox() ));
            // Use combobox for strings
            table.setDefaultEditor(String.class, new DefaultCellEditor(
                    new JComboBox( new String[] { "Hallo!", "Bye!" } ) ));
        public static void main(String[] arg) {
            Test test = new Test();
            test.setVisible(true);
    }

    Hi again,
    yes it works when i set it for single column, but i'd like to use default editor, because column count is not fixed.
    According to documentation: "Sets a default cell editor to be used if no editor has been set in a TableColumn. If no editing is required in a table, or a particular column in a table, uses the isCellEditable method in the TableModel interface to ensure that this JTable will not start an editor in these columns. If editor is null, removes the default editor for this column class."
    So when i call
    column.setCellEditor(null); in TableColumnModelListener columnAdded event. But still it's not working. See sample below (i've changed it to cell renderer coz result is clear on single view, but problem stays same)
    More over problem seems to be with algoritm that decide which class to use. Object takes preference any time. W/o it npe arries.
    Regards
    Adam
    import java.awt.*;
    import javax.swing.*;
    import javax.swing.table.DefaultTableCellRenderer;
    import javax.swing.table.DefaultTableModel;
    public class Test extends JFrame {
        JTable table;
        Test() {
            // Create table model
            table = new JTable();
            table.setModel(new DefaultTableModel(
                new Object[][] {
                    { Boolean.TRUE, Integer.valueOf(10) },
                    { "Hallo!", Boolean.FALSE },
                }, new String[] { "Col1", "Col2" }));
            // Setup frame a little
            setLayout(new BorderLayout());
            setBounds(new Rectangle(300,300,200,100));
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            add(table,BorderLayout.CENTER);
            table.setDefaultRenderer(Object.class,new Renderer(Color.YELLOW));
            table.setDefaultRenderer(String.class,new Renderer(Color.BLUE));
            table.setDefaultRenderer(Boolean.class,new Renderer(Color.RED));
            table.setDefaultRenderer(Integer.class,new Renderer(Color.GREEN));
            // use default renderer in all columns
            table.getColumn(table.getColumnName(0)).setCellRenderer(null);
            table.getColumn(table.getColumnName(0)).setCellRenderer(null);       
        public static void main(String[] arg) {
            Test test = new Test();
            test.setVisible(true);
        class Renderer extends DefaultTableCellRenderer {
            Color color;
            Renderer(Color color) { this.color = color; }
            public Component getTableCellRendererComponent(JTable table, Object value,
                    boolean isSelected, boolean hasFocus, int row, int column) {
                super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
                setBackground(color);
                setToolTipText("Class is "+value.getClass().getName());
                return this;
    }Message was edited by:
    a3cchan

  • Tagging an image with a callout and caption

    The document is created in MSWord 2013. It contains screen captured images along with added call-outs and a caption for each (see image #2 below). The call-outs extend outside the image border. I used the 'group' option in Word to group each of the elements together as they tend to move around the page during the editing process. The 'picture' group is formatted as 'inline with text' or 'top and bottom'. 
    In Adobe Acrobat XI Pro, I am trying to fix the tags for the figures. Although each of the elements are group in Word, they are appearing as separate elements/tags. (see image #1 below) ...the image is one Figure, the call-out is another Figure and the caption is yet another Figure. How should I handle this type of situation?  I have tried:
    1. to tag all three elements as a 'Figure'. Sometimes this works; sometimes the caption and/or the text in the call-out disappear.
    2. to tag all three elements as a 'Figure/Caption'; however, I get the same results as above...sometimes the caption and/or text in the call-out disappear.
    3. I also tagged the call-out as 'background' and then tagged the image and caption together as either 'figure' or 'figure/caption'; however, when selecting the image and caption, I must select the call-out as well because of it's proximity to the image. End result: text in call-out disappears.
    What is the proper way to tag in this situation?
    As an aside, I find the entering the ALT text in MSWord does not carry over to the PDF. I've experimented with the too. I've added the ALT text to the image on its own and to the group. I've added it to the "Title" field; however, the ALT text field in the PDF is empty. I've given up on adding this in Word and now add them directly to the tag.
    If someone can help point me in the right direction on how to fix the tag issues for images/callouts/caption, I'd be very grateful!!!!!  (BTW, using a page layout application is not an option. I must use MSWord 2013 to create my documents.)

    HI 'C' student!
    Thanks for the info. I will give the Content pane a try.
    I think my Word 2013 might have a bug.  When i enter text into either the 'title' field or the 'description' field, the text does not move over or wrap around so that i can fully see what i've entered. i wonder if this is impacting the carry-over into the pdf file?
    the company I work for does not 'officially' support this version of Word, as i am an 'early adoptor' of this version. until the rest of the company moves to this version, i'm kinda on my own. i am going to see who i can speak with to see about getting an update, though. maybe that will fix the problem.
    thanks again,

  • Small issue with custom table cell editor and unwanted table row selection

    I'm using a custom table cell editor to display a JTree. Thing i notice is that when i select a value in the tree pop-up, the pop-up closes (as it should) but then every table row, from the editing row to the row behind the pop-up when i selected the value becomes highlighted. I'm thinking this is a focus issue, but it thought i took care of that. To clairfy, look at this: Before . Notice how the "Straightening" tree item is roughly above the "Stock Thickness" table row? When i select Straightening, this is what happens to my table: After .
    My TreeComboBox component:
    public class TreeComboBox extends JPanel implements MouseListener {
        private JTextField itemField;
        private TreeModel treeModel;
        private ArrayList<ActionListener> actionListeners = new ArrayList<ActionListener>();
        private Object selectedItem;
         * Creates a new <code>TreeComboBox</code> instance.
         * @param treeModel the tree model to be used in the drop-down selector.
        public TreeComboBox(TreeModel treeModel) {
            this(treeModel, null);
         * Creates a new <code>TreeComboBox</code> instance.
         * @param treeModel the tree model to be used in the drop-down selector.
         * @param selectedItem tree will expand and highlight this item.
        public TreeComboBox(TreeModel treeModel, Object selectedItem) {
            this.treeModel = treeModel;
            this.selectedItem = selectedItem;
            initComponents();
         * Returns the current drop-down tree model.
         * @return the current <code>TreeModel</code> instance.
        public TreeModel getTreeModel() {
            return treeModel;
         * Sets the tree model.
         * @param treeModel a <code>TreeModel</code> instance.
        public void setTreeModel(TreeModel treeModel) {
            this.treeModel = treeModel;
         * Returns the selected item from the drop-down selector.
         * @return the selected tree object.
        public Object getSelectedItem() {
            return selectedItem;
         * Sets the selected item in the drop-down selector.
         * @param selectedItem tree will expand and highlight this item.
        public void setSelectedItem(Object selectedItem) {
            this.selectedItem = selectedItem;
            String text = selectedItem != null ? selectedItem.toString() : "";
            itemField.setText(text);
            setToolTipText(text);
         * Overridden to enable/disable all child components.
         * @param enabled flat to enable or disable this component.
        public void setEnabled(boolean enabled) {
            itemField.setEnabled(enabled);
            super.setEnabled(enabled);
        public void addActionListener(ActionListener listener) {
            actionListeners.add(listener);
        public void removeActionListener(ActionListener listener) {
            actionListeners.remove(listener);
        // MouseListener implementation
        public void mouseClicked(MouseEvent e) {
        public void mouseEntered(MouseEvent e) {
        public void mouseExited(MouseEvent e) {
        public void mousePressed(MouseEvent e) {
        public void mouseReleased(MouseEvent e) {
            showPopup();
        private void initComponents() {
            setLayout(new GridBagLayout());
            itemField = new JTextField();
            itemField.setEditable(false);
            itemField.setText(selectedItem != null ? selectedItem.toString() : "");
            itemField.addMouseListener(this);
            add(itemField, new GridBagConstraints(0, 0, 1, 1, 1.0, 0.0,
                    GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
        private void showPopup() {
            final TreePopup popup = new TreePopup();
            final TreeComboBox tcb = this;
            final int x = itemField.getX();
            final int y = itemField.getY() + itemField.getHeight();
            int width = itemField.getWidth() + popupButton.getWidth();
            Dimension prefSize = popup.getPreferredSize();
            prefSize.width = width;
            popup.setPreferredSize(prefSize);
            SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    popup.show(tcb, x, y);
                    popup.requestFocusInWindow();
        private void fireActionPerformed() {
            ActionEvent e = new ActionEvent(this, ActionEvent.ACTION_PERFORMED, "TreeComboBoxSelection");
            for (ActionListener listener : actionListeners) {
                listener.actionPerformed(e);
        private class TreePopup extends JPopupMenu {
            private JTree tree;
            private JScrollPane scrollPane;
            public TreePopup() {
                initComponents();
                initData();
            private void initData() {
                if (treeModel != null) {
                    tree.setModel(treeModel);
            private void initComponents() {
                setFocusable(true);
                setFocusCycleRoot(true);
                tree = new JTree();
                tree.setRootVisible(false);
                tree.setShowsRootHandles(true);
                tree.setFocusable(true);
                tree.setFocusCycleRoot(true);
                tree.addTreeSelectionListener(new TreeSelectionListener() {
                    public void valueChanged(TreeSelectionEvent e) {
                        tree_valueChanged(e);
                scrollPane = new JScrollPane(tree);
                add(scrollPane);
            private void tree_valueChanged(TreeSelectionEvent e) {
                DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent();
                setSelectedItem(node.getUserObject());
                fireActionPerformed();
                this.setVisible(false);
    }My TreeComboBoxTableCellEditor:
    public class TreeComboBoxTableCellEditor extends AbstractCellEditor implements TableCellEditor, ActionListener {
        protected TreeComboBox treeComboBox;
        protected ArrayList<CellEditorListener> cellEditorListeners = new ArrayList<CellEditorListener>();
        public TreeComboBoxTableCellEditor(TreeComboBox treeComboBox) {
            this.treeComboBox = treeComboBox;
            treeComboBox.addActionListener(this);
        public Object getCellEditorValue() {
            return treeComboBox.getSelectedItem();
        public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
            treeComboBox.setSelectedItem(value);
            return treeComboBox;
        public void actionPerformed(ActionEvent e) {
            stopCellEditing();
    }Any thoughts?
    Edited by: MiseryMachine on Apr 3, 2008 1:21 PM
    Edited by: MiseryMachine on Apr 3, 2008 1:27 PM

    As I said, you have to have empty context elements before additional rows will be open for input.
    For instance if you want to start with 5 rows available for input do the following to your internal table that you will bind:
    data itab type standard table of sflight.
    do 5 times.
      append initial line to itab.
    enddo.
    context_node->bind_table( itab ).
    The other option if you need n number of rows is to add a button to the table toolbar for adding more rows. When this button is pressed, you add a new context element to the node - thereby creating a new empty row in the table.

  • JTable cell editor and row selection

    I have a JTable with 8 columns and the last column is editable and has a custom table cell editor. The user can edit cells in that column or select a row and use buttons above the table to do such things as delete the row. So far so good. However if the user selects a row by clicking on a cell in the editable column and tries to delete the last row(for example) the row disappears except for the cell in the last column which is left hanging with the cursor in it.
    I do a table.clearSelection(). Do I need to set the focus elsewhere in the table?
    Help! and thanks.

    Before you delete the row, cancel the in-process editing:
    if( _table.isEditing() ) {
        _table.getCellEditor().cancelCellEditing();
    // Delete the row in the model

  • How to display an image in particular cell editor

    Hi All,
    I want to display an image as the background for the table cell.
    I searched in sdn and found the solution only for link to action.
    I have created a dynamic table and if i click on apply button one more row is getting added according to my requirement.
    I want to differentiate this row from rest.  So I need to display image for the last row in the table which is added newly. 
    Can anyone suggest the procedure for adding an image in a particular cell editor along with the table data?
    Hope I am clear with my requirement.
    Pls suggest.
    Regards,
    subashini

    Hi,
    IF iam not wrong then for some rows u need to show text data and for some rows u need to show image data.
    follow the following steps.
    1. In ur table add cell editor of type Image.
    2.Create a value node with one more than required attributes.
    3.Suppose if need to show only one column then i will create  
       value node with two attributes.One attribute will be for text
      data and one will for Image.
    4.now access ur table cell editor dynamically.For image type
      cell editor we need to play only with two properties source
    and alt.Bind this alt property of editor wid that attribute which u
    need use for text data and source wid that attribute which u
    need to use for image.
    5.  Now suppose I need to show text data then
    I will create one element of that value node.In case of Image
    type cell editor source property  is given prefrence over alt
    property.
    set attribute which is bound to alt to the actual text data
    i.e setText("Actual text data");
    and set attribute which is bound to source to some dummy
    image name
    i.e setImage("dummy.gif");
    add this to node.
    during execution as source property of editor is bound to
    Image attribute of node  which in turn is set to dummy value it
    wont find actual source and will set Image cell editor with
    watever is bound to alt property which in turn set with actual
    text value..
    6.  Now suppose I need to show Image data then
    I will create one element of that value node.In case of Image
    type cell editor source property  is given prefrence over alt
    property.
    set attribute which is bound to alt to blank value 
    i.e setText("");
    and set attribute which is bound to source to some Actual 
    image name
    i.e setImage("Image.gif");
    add this to node.
    during execution as source property of editor is bound to
    Image attribute of node which in turn is set to Actual image file
    it will  set Image cell editor with that image name  and wont look for alt property.
    Copy all ur images in src->mimes->components->ur package
    Regards
    Surender Dahiya

  • How can we fix images and String in a perticular row's second column in JTa

    Hi,
    I have to design a window in which there is a table I have to set the some row's second column data with images and text data both and some row contan only text data Please help me on it .There is two column and 5 row in my table.
    Thanks in advance,
    anum

    [url http://java.sun.com/docs/books/tutorial/uiswing/components/table.html#editrender]Using Editors and Renderers
    You will need to create a custom renderer to display both an image and text. Renderers are assigned to a column. If you require different renderers for a given row in a column then you will need to override the getCellRenderer(...) method to return a renderer for the specific row.

  • Custom JTable cell editors and persistence

    I have a JTable with an underlying data model (an extension of AbstractTableModel) that uses custom cell editors in the last column. The cell editor in that column, for a given row, depends on the value selected in another column of the same row. The cell editors include text, date, list, and tree editors (the last one in a separate dialogue). The number of rows is changeable.
    I have need to persist the data for a populated table from time to time, for restoration later on. I've achieved that, such that the data model is recreated, the table appears correct, and the appropriate cell editors activated (by creating new instances of the editors' classes).
    However, my problem is that the (custom) cell editors do not reflect the data in the model when editing mode is begun the first time after restoration. Eg. the text editor is always empty, the list editor shows the first item, and no node is selected in the tree editor.
    If I've restored the model correctly, should the editors properly reflect the underlying data when they are set to editing mode?
    I suspected not, and thus tried to explicitly 'set' the correct values immediately after each editor is recreated ... but to no avail.
    Does anyone have any thoughts, or experience with something similar? I'm happy to supply code.

    You can use html tags within Swing, so I think you can do the following:
    * MyRenderer.java
    * Created on 26 April 2007, 10:27
    * To change this template, choose Tools | Template Manager
    * and open the template in the editor.
    package newpackage;
    import java.awt.Component;
    import javax.swing.JLabel;
    import javax.swing.JTable;
    import javax.swing.SwingConstants;
    import javax.swing.table.TableCellRenderer;
    * @author CS781RJ
    public class MyRenderer extends JLabel implements TableCellRenderer
        public MyRenderer()
            setHorizontalTextPosition(SwingConstants.RIGHT);
            setIconTextGap(3);
            setOpaque(true);
        public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean cellHasFocus, int row, int column)
            if (isSelected)
                setBackground(table.getSelectionBackground());
                setForeground(table.getSelectionForeground());
            else
                setBackground(table.getBackground());
                setForeground(table.getForeground());
            if (value instanceof String)
                if ((value != null) && (value.toString().length() > 0))
                    System.out.println("Value: " + value.toString());
                    setFont(new java.awt.Font("Tahoma", 0, 11));
                    setText("<html>" + value.toString().replaceAll("\n", "<br>") + "</html>");
            return this;
    }In the class that has the JTable, use the code AFTER declaring the values, columns, etc:
    jTable1.getColumnModel().getColumn(0).setCellRenderer(new MyRenderer());
    jTable1.setValueAt("Riz\nJavaid", 0, 0);One thing I haven't done is to resize the cell heights, make sure this is done.
    Hope this helps
    Riz

Maybe you are looking for

  • Text Message with sent/receive time

    I had a LG Voyager before the DX. When I got a text message it would show the time when the sender sent the message and the time I received it. So if I turned my phone on at 10 am and somebody sent a text at 8 am it would show sent at 8 received at 1

  • Question in Struts internaitonalization application

    Hi ,everybody. I created a Tomcat project with Struts 1.2.6 architecture,I applied the characteristic of Struts,the web.xml is listed as following: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD W

  • Multi-tasking/internet usage

    So i'm a little confused about this thing. I just got an IPhone4 a few days ago and I noticed all these programs I had running in the background. Do I need to exit apps like Facebook, Skype and Safari in order to avoid extensive internet data usage?

  • Java.lang.NullPointerException problems

    I have noticed i cannot make a Point P = new Point(null); it throws this exception. However i have made a function that returns a point, or null, depending on whether two line segments collide. Here is what happens: this is where the error occours, a

  • Third Party RAM and SSD for MBP's???

    I found MACSALES.COM GREAT SITE!! Crucial SSD's ! Is it really that difficult to install the SSD and or RAM as I am hearing on the new Aluminum Chassis???? Any sites explaining how to DIY? BTW is the DDR3 OWC RAM Other World Computing - 1333DDR3S08S