How to add af:inputFile dynamically within each row of table?

I need to add af:inputfile dynamically within each row of af:table, when the user hits a commandlink at the bottom of each row.
I have tried wrapping af:inputfile with af:foreach:
<af:table value="Bean.rows" var="row">
<af:column>
<af:forEach step="1" begin="1"
end="#{Bean.filecount}">
<af:inputFile label="Please upload a file"
id="1"
valueChangeListener="#{Bean.onClickUpload}"/>
</af:forEach>
<af:commandLink text="Add more file" id="cl3" actionListener="#{Bean.onAddFile}"/>
</af:column>
</af:table>
in Bean.onAddFile, I have:
public void onAddFile(ActionEvent event){
filecount++;
It works but there's no independent control of each row. When I click one commandlink, All rows now have 2,3,.... af:inputFile. The change affects all rows.
The requirement should be that when I click one commandlink in a row, only that row shows additional af:inputFile.
So why not leverage the row variable of the table, right? That's what I did, I changed the end attribute of foreach to the following:
<af:forEach step="1" begin="1"
end="#{row.fileRowCount}">
the backing bean method changed to the following:
public void onAddFile(ActionEvent event){
int filerowcount = (Integer)JsfUtil.resolveExpression("#{row.fileRowCount}");
Integer newcount = filerowcount+1;
JsfUtil.setExpressionValue("#{row.fileRowCount}", newcount.toString());
Note that "row" refers to an object that has a int field called "filerowcount". And the initial value is "1".
Just for testing, I also added <af:outputText value="row.filerowcount"/>, to see if the count is what I expected it to be.
I didn't see the any af:inputfile this time, but the outtext is showing the filerowcount properly. When I click the commandlink, the number changed to 2,3,..... Also in the backing bean newcount and filerowcount is incrementing correctly.
I know the begin, end attribute means the index of a for loop. So I changed begin="0", it now shows one row of af:inputfile, but when I click the commandlink, no additional rows are shown. (Although the outputtext of filerowcount keeps incrementing as expected.
So to sum up, the END attribute of af:foreach row CAN pick up the value from the backing bean and render af:inputfile dynamically, but it CANNOT pick up the value from the the field in VAR object of a table.
Is is a known issue? Or I did something by mistake.
Is there any other way to add af:inputFile dynamically within each row of table?
Any advice/comment is appreciated.

Hi,
here is how it goes:
- add an af:inputFile to the column and set its rendered property to point to a managed bean property. The managed bean property has a default value of "false" and the bean should be in viewScope
- create another variable that holds the row number that should show the inputFile component. This is updated by the command link and evaluated by the get method of the managed bean property controlling the inputFile visibility
- Define a property name for the table varStatus property
- For the command link, define a attribute f:attribute with the name rowNumber and set its value to #{varStatusPropertyName.index}
- define an action listener for the command link
public void showInputFile(ActionEvent actionEvent){
int rowNumber = ((RichCommandLink) actionEvent.getSource()).getAttributes().get("varStatusPropertyName");
//set the value on the internal variable
- In the getter of the property that defines the render value of the inputFile, use code like this
public boolean get<whatever name you use>(){
//access the following EL from Java #{varStatusPropertyName.index}
int currentRenderedRow = <EL result here>;
// compare the current row index with the one set by the command link, which is stored in the variable of the managed bean
if true return true
else return false
- Set the PartialTriggers property of the table to point to the commandLink ID so the table is repainted when the command link is pressed
This should then render the fileInput component for a single row (the one you clicked the command link in)
Frank

Similar Messages

  • How to add a delete button on each row of the table.

    i create a table with a list , and i add a new column.
    and then i drag a delete botton from the list operation to the column.
    when i create several rows. and click any delete botton of the new created rows. all the new created rows will be deleted.
    rows that already exist when the page render are not influenced.and when i click these rows' delete botton,
    just the current row will be delete.
    that's because when i click the new created rows' delete botton,all the new created botton in this column will automatically be clicked.
    i think adf consider all the delete botton are the same one.
    is it the table bug? please tell me how to resolve this problem. thanks.
    Edited by: 917391 on 2012-3-21 下午6:53
    Edited by: 917391 on 2012-3-21 下午10:07
    Edited by: 917391 on 2012-3-21 下午10:16

    i don't use the adf BC, so it is not a VO. it's just a service method that return a list.
    and i create the datacontrol and drag it to the page.
    Edited by: 917391 on 2012-3-21 下午10:26

  • How to add a frame dynamically in a jsp page.

    Hai all,
    In my application, in a particular jsp page i had the 3 links namely add.edit and delete. When click on add button, it is pointing to another jsp page where i can enter user details. But what i want now is when i click add button, the form in which we fill the user details should be added to the current page itself dynamically i.e., it should not go to another page when i click add button and that form should be displayed in the current page in a new frame dynamically.
    The same should happen when i click n edit or delete options. everything should be diaplayed in the same page in different frames.
    Can anyone suggest me about how to add a frame dynamically.

    You create a frameset with two frames. One frame you give 100% of the rows and run the JSP in this frame. The other frame you give 0% of the row so that it is hidden. In the JSP you use a JavaScript funtion to submit the form. This function will call the parent frameset to reset the row values to 50%/50% which will make the bottom frame visible and then submit the form request with the bottom frame as teh target.
    It is not so much as creating frames as using JavaScript to hide and display frames.

  • How to add a scroll bar within a view window ?I want to display x and y axis outside the scoll window and keep those axis static and move the graph within scroll area

    how to add a scroll bar within a view window ?I want to display x and y axis outside the scoll window and keep those axis static and move the graph within scroll area
    ananya

    Hey Ananya,
    I believe what you want to do is possible, but it will not be
    easy.  If you want to add a scroll bar that will scroll the graph
    back and forth but keep the axis set, you would want to add a
    horizontal or vertical scrollbar.  Then you would create an event
    handler for the scroll event.  You would have to manually plot
    different data within this scroll event.  Unfortunately, there is
    not really a built in way to do this with the Measurement Studio plot
    control.
    Thanks,
    Pat P.
    Software Engineer
    National Instruments

  • How to add ComboBox to dynamically created DataGridColumn ?

    hai friends,
    help me, How to add ComboBox to dynamically created DataGridColumn

    public     function docfoldercurtainmanagerResult(event):void
    if(event.result){
    rightslistArray=event.result.RES2;
    //Alert.show(event.fault.message);
    <mx:DataGridColumn  
    headerText="Rights Level" minWidth="75" sortable="true" >
    <mx:itemRenderer>
    <fx:Component>
    <mx:ComboBox dataProvider="{outerDocument.rightslistArray}" labelField="sec_rights_level" />
    </fx:Component>
    </mx:itemRenderer>
    </mx:DataGridColumn>

  • How to add one more field to an exist internal table

    hi abapers
    i am a very new abap programmer and just started learning it.
    i want to know How to add one more field to an exist internal table.
    lemme me put my question in a very simple way.
    i have a internal table having fields f1,f2,f3 and which also that internal also contains some data.
    now i want to add two more fields (mm & nn) to that internal table now.
    how can i do that.
    and i wanna know the websites names where i can find some brain teasing questions in abap programming.
    eagerly waiting for ur reply
    regards,
    Maqsood A Khan

    Hi, MAQSOOD.
    You can insert more fields in your internal table like this.
    refer this code snippet.
    DATA : BEGIN OF tbl_itab OCCURS 0.
            INCLUDE STRUCTURE zsdtc009.
    DATA :  vkorg   LIKE vbak-vkorg,  "inserted one
            vtweg   LIKE vbak-vtweg,  "inserted one
            vkbur   LIKE vbak-vkbur,  "inserted one
            vkgrp   LIKE vbak-vkgrp,  "inserted one
           END OF tbl_itab.
    you can also read the book "Teach yourself abap in 21 days"
    at http://cma.zdnet.com/book/abap/
    but that book is just about basic concept of abap and report program.
    it doesn't give a lecture for on-line program.
    you can get pdf version books(about abap, sap...things) from sap.
    http://help.sap.com/printdocu/core/Print46c/en/Data/htm/english.htm
    I wish I could help you.
    Regards
    Kyung Woo.

  • Add a radio button to each row on output (not selection-screen)

    its a normal interacitve report...
    we need to add a radio button to each row on output (not selection-screen) and when user selects the radio button of a particular row and clicks on the user defined menu 'Execute' the report has to fetch the records from a table corresponding to the selected row on the second list.
    all this has to be done in normal interactive list.
    please let me know your suggetions as soon as possible.
    thanks,
    usha.

    Hi ,  try this
    TABLES: spfli.
    TYPE-POOLS:slis.
    PARAMETERS: p_col TYPE i ,
                p_row TYPE i,
                p_color(4) TYPE c .
    DATA: t_fieldcat TYPE slis_t_fieldcat_alv,
          fs_fieldcat LIKE LINE OF t_fieldcat,
          fs_layout TYPE slis_layout_alv ,
          w_color(4) ,
          w_row TYPE i,
          w_fieldname(20),
          w_prog TYPE sy-repid.
    TYPES : BEGIN OF ty_spfli ,
              color(4),
              checkbox ,
              cell TYPE slis_t_specialcol_alv,
              carrid TYPE spfli-carrid,
              connid TYPE spfli-connid,
              cityfrom TYPE spfli-cityfrom,
              cityto TYPE spfli-cityto,
              distance TYPE spfli-distance,
           END OF ty_spfli.
    DATA : wa_spfli TYPE ty_spfli ,
           t_spfli TYPE TABLE OF ty_spfli.
    DATA: fs_cell LIKE LINE OF wa_spfli-cell.
    SELECT carrid connid cityfrom cityto distance
      FROM spfli
      INTO CORRESPONDING FIELDS OF TABLE t_spfli.
    w_color = p_color.
    fs_fieldcat-fieldname = 'CARRID'.
    fs_fieldcat-ref_tabname = 'SPFLI'.
    fs_fieldcat-col_pos = 1.
    fs_fieldcat-key = 'X'.
    APPEND fs_fieldcat TO t_fieldcat.
    CLEAR fs_fieldcat .
    fs_fieldcat-fieldname = 'CONNID'.
    fs_fieldcat-ref_tabname = 'SPFLI'.
    fs_fieldcat-col_pos = 2.
    fs_fieldcat-key = 'X'.
    APPEND fs_fieldcat TO t_fieldcat.
    CLEAR fs_fieldcat .
    fs_fieldcat-fieldname = 'DISTANCE'.
    fs_fieldcat-ref_tabname = 'SPFLI'.
    fs_fieldcat-col_pos = 3.
    fs_fieldcat-key = ' '.
    fs_fieldcat-edit = 'X'.
    APPEND fs_fieldcat TO t_fieldcat.
    CLEAR fs_fieldcat.
    fs_fieldcat-fieldname = 'CITYFROM'.
    fs_fieldcat-ref_tabname = 'SPFLI'.
    fs_fieldcat-col_pos = 4.
    fs_fieldcat-key = ' '.
    APPEND fs_fieldcat TO t_fieldcat.
    LOOP AT t_fieldcat INTO fs_fieldcat.
      IF fs_fieldcat-col_pos EQ p_col.
        fs_fieldcat-emphasize = p_color.
        w_fieldname = fs_fieldcat-fieldname.
        IF p_row IS INITIAL AND p_col GT 0.
          MODIFY t_fieldcat FROM fs_fieldcat TRANSPORTING emphasize.
        ENDIF.
      ENDIF.
    ENDLOOP.
    fs_layout-info_fieldname = 'COLOR'.
    fs_layout-box_fieldname = 'CHECKBOX'.
    fs_layout-coltab_fieldname = 'CELL'.
    fs_layout-f2code = '&ETA'.
    w_prog = sy-repid.
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
      EXPORTING
        i_callback_program = w_prog
        is_layout          = fs_layout
        it_fieldcat        = t_fieldcat
      TABLES
        t_outtab           = t_spfli
      EXCEPTIONS
        program_error      = 1
        OTHERS             = 2.
    IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Regards,
    Aby

  • Adding a button in each row of table view

    Hi.
    In my application i have to add a button in each row of table view. i have done this by using UICatalog example. now problem is how I can handle the click events of these buttons.
    suppose i have 5 buttons in 5 rows ... now one of them is clicked(suppose button in 3rd row). how would i know that button in 3rd row is clicked.
    Muhammad Usman Aleem

    - (UITableViewCell)tableView:(UITableView)tableView
    cellForRowAtIndexPath:(NSIndexPath*)indexPath {
    static NSString *CellTableIdentifier = @"CellTableIdentifier ";
    static NSUInteger nTag = 100;
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:
    CellTableIdentifier];
    if (cell == nil) {
    CGRect cellFrame = CGRectMake(0, 0, 300, 65);
    cell = [[[UITableViewCell alloc] initWithFrame:cellFrame
    reuseIdentifier:CellTableIdentifier] autorelease];
    CGRect labelRect = CGRectMake(10, 26, 190, 15);
    UILabel *label = [[UILabel alloc] initWithFrame:labelRect];
    label.textAlignment = UITextAlignmentLeft;
    label.font = [UIFont boldSystemFontOfSize:12];
    // set all label tags to 10 so the label can be found in the subviews
    label.tag = 10;
    [cell.contentView addSubview:label];
    [label release];
    CGRect buttonRect = CGRectMake(210, 25, 65, 25);
    UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    button.frame = buttonRect;
    // set the button title here if it will always be the same
    [button setTitle:@"Action" forState:UIControlStateNormal];
    button.tag = nTag++;
    [button addTarget:self action:@selector(myAction:) forControlEvents:UIControlEventTouchUpInside];
    // make sure the button is the lowest subview so it's easy to find
    [cell.contentView insertSubview:button atIndex:0];
    // button will be autoreleased so don't release it here
    // the label text and button title come from an array of NSDictionary in this example
    NSUInteger row = [indexPath row];
    NSDictionary *rowData = [self.data objectAtIndex:row];
    UILabel *thisLabel = (UILabel*)[cell.contentView viewWithTag:10];
    thisLabel.text = [rowData objectForKey:@"Text"];
    // set the button title here if it depends on the row
    UIButton *thisButton = [[cell.contentView subviews] objectAtIndex:0];
    [thisButton setTitle:[rowData objectForKey:@"Button"] forState:UIControlStateNormal];
    return cell;
    - (IBAction)myAction:(id)sender {
    UIButton *theSender = sender;
    UITableViewCell *cell;
    NSUInteger row = 0;
    for (cell in [theTableView visibleCells]) {
    UIButton *thisButton = [[cell.contentView subviews] objectAtIndex:0];
    if (thisButton.tag == theSender.tag) {
    row = [[theTableView indexPathForCell:cell] row];
    break;
    NSLog(@"myAction: row=%d", row);

  • How to Control the width of the Filter row in Table View

    Hi !
    I have a Table View with filter='application'. The filter works fine but I am not able to control the width of the columns of the tableview .
    On filtering, if there are not items in the table view the columns shrink to the minum width....and  it looks very odd.
    Can you help me how to control the width of the Filter-Row in Table Veiw.
    Thanks and Best Regards,
    Bindiya

    Hi Raja,
    "FIXEDCOLUMN" did not help in the width of the column, but it just showed all the rows merged in the column.
    I have a cloumn called "COUNTRY" and its width is set to "20". The Filter of the column "COUNTRY" is a dropdownlist whos value is update with new values.
    On filtering if there is any row visible then the column width is adjusted to the maxmimum length of the dropdownlist ( this is because of the "EDIT" attribute in column definition ). But if there is no rows visiblel for the selected filter value then the filter row shrinks to the width = "20" and the dropdownlist is not visible completely.
    Need to know how to control the width of the FILTER column.
    Thanks and Best Regards,
    Bindiya

  • How To Add Serial Number  Dynamically

    Dear all,
    In a dynamic form I require to add cosecutive serial no to the dynamically generated fields.How can I do it?If any body can please help me.
    Thanking you
    Rakesh

    I too need to be able to add a sequence number to each new row that is added to a dynamic form. The fields are being added / deleted as they should be but my JavaScript knowledge is not up to the level where I am able to address individual fields in each new row.
    I've tried script along the lines of:
    _detail[0].Item_Sequence.rawValue = 1;
    _detail[1].Item_Sequence.rawValue = 2;
    Where "detail" is the subform that contains the 'dynamic' rows
    "Item_Sequence" is a numeric field in each row.
    Please help to put an old IBM mainframe developer out of his misery and get to grips with this wonderful world of new fangled Adobe object-oriented technology.

  • How to add line series dynamically to a line chart in flex?

    hi..i need to add line series dynamically to a line chart..depending on an array..the application is this..i have an array which stores the details of the users connected to an fmi server..the chart should display the bandwidth of each client..so the users should be added and removed from the chart dynamically...

    Hi
    1.I am giving you solution for dynamically adding values to the dropdown
    public void addValue( )  //Method Name in Component controller
        //@@begin addValue()
              IWDNodeInfo nodeinfo = wdContext.nodeNodeTestData().getNodeInfo();// Node should be map to the view's Node
              IWDAttributeInfo att = nodeinfo.getAttribute("VechileTypes");// Attribute by which dropdown in bound//
              IModifiableSimpleValueSet svSet = att.getModifiableSimpleType().getSVServices().getModifiableSimpleValueSet();
              svSet.put(wdContext.currentNodeTestDataElement().getInpAtt(),wdContext.currentNodeTestDataElement().getInpAtt());
        //@@end
    2.   wdThis.wdGetLangCompController().addValue(); // call this method in the point where u want to add values to the dropdown.

  • How to add LOV Data dynamically

    Hi Experts,
    Working in JDEV 11.1.1.3.0
    I have a requirement as need to add LOV values dynamically.
    I have Button to add rows in the table(transient VO), table as 2 columns one is value and another one is description, this description is lov(InputListOfValues -- Another Transient VO).
    This ListValues are dynamic, i need to get these values from Webservice call, this i have already written which is working fine.
    Now My requirement is the LOV should be get values dynamically for each corresponding value in the row.
    For this in add method, Added data to the LOV TransientVO, but when i click on inputComboLOV symbol, i am not getting any values, i put debugger values are setting to the transient VO,
    but when i click on lov symbol i am not getting proper values.
    Is there way to implement this requirment, can any one suggest me.
    Can we make transient VO as LOV VO?
    Edited by: user642703 on May 10, 2012 2:45 PM

    Hi,
    I think what you need to do is to access the Web Services from a programmatic view obeject to build a model driven LOV. If you did this then have a look here: http://www.oracle.com/technetwork/developer-tools/adf/learnmore/89-adfbc-lov-switcher-454168.pdf
    Frank

  • How to add an extra dynamic columns in workflow inbox?

    Hi Every Expert,
    Transaction SWL1 only provides Six columns as dynamic columns for workflow inbox. But we need to use 7 to 8 dynamic columns. How to add these two extra columns into workflow inbox?
    Thanks,
    Shirley

    Thank you very much for all you responses.
    Due to SAP only provides 6 columns, I can't add anohter extra dynamic column. I may consider to change task to show the contents in preview pane.
    Thanks again to everyone.
    Shirley,

  • How to add mouse listener for a single row alone

    I have a requirement. In a JTable when I double click a particular row the cells in the row should set to the width which I have provided.
    The problem with my code is when I click fourth row in the table, the first row gets adjusted.
    So how I need help is
    only if I click the first row, the first row cell size should get adjusted not when I click fourth row.
    Similarly if I give some cell width and height for fourth row cells, then when I double click the fourth row, the fourth should alone get adjusted and not the other rows.
    Hope I have explained clearly.
    How can it be achieved?
    Please find below my code. Everything is hardcoded. So it may look messy. Please excuse.
    // Imports
    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.Component;
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import javax.swing.JTextArea;
    import javax.swing.table.DefaultTableModel;
    import javax.swing.table.TableCellRenderer;
    import javax.swing.table.TableColumn;
    class SimpleTableExample extends JFrame {
    // Instance attributes used in this example
    private JPanel topPanel;
    private JTable table;
    private JScrollPane scrollPane;
    String data1 = "";
    String data2 = "123456789ABCDEFGHIJKLMNOPQRSTUVQWXYZabcdefghijklmnopqrstuvwxyzaquickbrownfoxjumpedoverthelazydog";
    int size = data2.length();
    // Constructor of main frame
    public SimpleTableExample() {
         // Set the frame characteristics
         setTitle("Simple Table Application");
         setSize(400, 200);
         setBackground(Color.gray);
         // Create a panel to hold all other components
         topPanel = new JPanel();
         topPanel.setLayout(new BorderLayout());
         getContentPane().add(topPanel);
         // Create columns names
         String columnNames[] = { "SEL", "DESIGN DATA", "PART NUMBER" };
         // Create some data
         String dataValues[][] = { { data1, data2, "67", "77" },
              { "", "43", "853" }, { "", "89.2", "109" },
              { "", "9033", "3092" } };
         DefaultTableModel model = new DefaultTableModel(dataValues, columnNames);
         model.addColumn("PART TITLE");
         model.addColumn("SPECIAL INSTRUCTIONS");
         table = new JTable(model) {
         public boolean isCellEditable(int rowIndex, int colIndex) {
              return false;
         // set specific row height
         table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
         int colInd = 0;
         TableColumn col = table.getColumnModel().getColumn(colInd);
         int width = 50;
         col.setPreferredWidth(width);
         int colInd2 = 1;
         TableColumn col2 = table.getColumnModel().getColumn(colInd2);
         int width2 = 100;
         col2.setPreferredWidth(width2);
         int colInd3 = 2;
         TableColumn col3 = table.getColumnModel().getColumn(colInd3);
         int width3 = 10;
         col3.setPreferredWidth(width3);
         int colInd4 = 3;
         TableColumn col4 = table.getColumnModel().getColumn(colInd4);
         int width4 = 10;
         col4.setPreferredWidth(width4);
         int colInd5 = 4;
         TableColumn col5 = table.getColumnModel().getColumn(colInd5);
         int width5 = 10;
         col5.setPreferredWidth(width5);
         table.addMouseListener(new MouseAdapter() {
         public void mouseClicked(MouseEvent e) {
              if (e.getClickCount() == 2) {
              JTable target = (JTable) e.getSource();
              int row = target.getSelectedRow();
              int column = target.getSelectedColumn();
              TableColumn col1 = table.getColumnModel().getColumn(0);
              col1.setPreferredWidth(50);
              TableColumn col2 = table.getColumnModel().getColumn(1);
              col2.setPreferredWidth(400);
              table.getColumnModel().getColumn(1).setCellRenderer(
                   new TableCellLongTextRenderer());
              table.setRowHeight(50);
              TableColumn col5 = table.getColumnModel().getColumn(4);
              col5.setPreferredWidth(200);
         // Create a new table instance
         // table = new JTable(dataValues, columnNames);
         // Add the table to a scrolling pane
         scrollPane = new JScrollPane(table);
         topPanel.add(scrollPane, BorderLayout.CENTER);
    // Main entry point for this example
    public static void main(String args[]) {
         // Create an instance of the test application
         SimpleTableExample mainFrame = new SimpleTableExample();
         mainFrame.setVisible(true);
    class TableCellLongTextRenderer extends JTextArea implements TableCellRenderer {
    public Component getTableCellRendererComponent(JTable table, Object value,
         boolean isSelected, boolean hasFocus, int row, int column) {
         this.setText((String) value);
         this.setWrapStyleWord(true);
         this.setLineWrap(true);
         // set the JTextArea to the width of the table column
         setSize(table.getColumnModel().getColumn(column).getWidth(),
              getPreferredSize().height);
         if (table.getRowHeight(row) != getPreferredSize().height) {
         // set the height of the table row to the calculated height of the
         // JTextArea
         table.setRowHeight(row, getPreferredSize().height);
         return this;
    Edited by: 915175 on Aug 3, 2012 4:24 AM

    Hi
    Try below code. Hope this will help
    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.Component;
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JTable;
    import javax.swing.JTextArea;
    import javax.swing.table.DefaultTableModel;
    import javax.swing.table.TableCellRenderer;
    import javax.swing.table.TableColumn;
    public class SimpleTableExample extends JFrame {
    private JPanel topPanel;
    private JTable table;
    private JScrollPane scrollPane;
    String data1 = "";
    String data2 = "123456789ABCDEFGHIJKLMNOPQRSTUVQWXYZabcdefghijklmnopqrstuvwxyzaquickbrownfoxjumpedoverthelazydog";
    int size = data2.length();
    // Constructor of main frame
    public SimpleTableExample() {
    // Set the frame characteristics
    setTitle("Simple Table Application");
    setSize(400, 200);
    setBackground(Color.gray);
    // Create a panel to hold all other components
    topPanel = new JPanel();
    topPanel.setLayout(new BorderLayout());
    getContentPane().add(topPanel);
    // Create columns names
    String columnNames[] = { "SEL", "DESIGN DATA", "PART NUMBER" };
    // Create some data
    String dataValues[][] = { { data1, data2, "67", "77" },
    { "", "43", "853" }, { "", "89.2", "109" },
    { "", "9033", "3092" } };
    DefaultTableModel model = new DefaultTableModel(dataValues, columnNames);
    model.addColumn("PART TITLE");
    model.addColumn("SPECIAL INSTRUCTIONS");
    table = new JTable(model) {
    public boolean isCellEditable(int rowIndex, int colIndex) {
    return false;
    // set specific row height
    table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
    int colInd = 0;
    TableColumn col = table.getColumnModel().getColumn(colInd);
    int width = 50;
    col.setPreferredWidth(width);
    int colInd2 = 1;
    TableColumn col2 = table.getColumnModel().getColumn(colInd2);
    int width2 = 100;
    col2.setPreferredWidth(width2);
    int colInd3 = 2;
    TableColumn col3 = table.getColumnModel().getColumn(colInd3);
    int width3 = 10;
    col3.setPreferredWidth(width3);
    int colInd4 = 3;
    TableColumn col4 = table.getColumnModel().getColumn(colInd4);
    int width4 = 10;
    col4.setPreferredWidth(width4);
    int colInd5 = 4;
    TableColumn col5 = table.getColumnModel().getColumn(colInd5);
    int width5 = 10;
    col5.setPreferredWidth(width5);
    // Cell Render should apply on each column -- add by Rupali
    for(int i=0; i< table.getColumnModel().getColumnCount(); i++){
    table.getColumnModel().getColumn(i).setCellRenderer( new TableCellLongTextRenderer());
    table.addMouseListener(new MouseAdapter() {
    public void mouseClicked(MouseEvent e) {
    if (e.getClickCount() == 2) {
    JTable target = (JTable) e.getSource();
    int row = target.getSelectedRow();
    int column = target.getSelectedColumn();
    setTableCellHeight(table,row,column); //Added by Rupali
    TableColumn col1 = table.getColumnModel().getColumn(0);
    col1.setPreferredWidth(50);
    TableColumn col2 = table.getColumnModel().getColumn(1);
    col2.setPreferredWidth(400);
    TableColumn col5 = table.getColumnModel().getColumn(4);
    col5.setPreferredWidth(200);
    // Create a new table instance
    // table = new JTable(dataValues, columnNames);
    // Add the table to a scrolling pane
    scrollPane = new JScrollPane(table);
    topPanel.add(scrollPane, BorderLayout.CENTER);
    * Created By Rupali
    * This will set cell's height and column's width
    * @param table
    * @param row
    * @param column
    public void setTableCellHeight(JTable table, int row, int column) {
    // set the JTextArea to the width of the table column
    setSize(table.getColumnModel().getColumn(column).getWidth(),
    getPreferredSize().height);
    if (table.getRowHeight(row) != getPreferredSize().height) {
    // set the height of the table row to the calculated height of the
    // JTextArea
    table.setRowHeight(row, getPreferredSize().height);
    // Main entry point for this example
    public static void main(String args[]) {
    // Create an instance of the test application
    SimpleTableExample mainFrame = new SimpleTableExample();
    mainFrame.setVisible(true);
    class TableCellLongTextRenderer extends JTextArea implements TableCellRenderer {
    public Component getTableCellRendererComponent(JTable table, Object value,
    boolean isSelected, boolean hasFocus, int row, int column) {
    this.setText((String) value);
    this.setWrapStyleWord(true);
    this.setLineWrap(true);
    return this;
    }

  • How to add the contents of a field of internal table.

    Hello Everybody,
    How to sum up the individual field from a internal table. Like i have a internal table that has menge field , I need to sum up the menge field for each matnr..
    exm : for each matnr there are 5 menge entries, I need to add all the menge fields and shud be put against the matnr .
    Thanks,

    Hi Khaleel,
    One more option is using the "collect" statement.....
    imagine in the internal table itab..we have 2 fields only..
    MATNR,MENGE,
    we have 2 internal tables itab1 and itab2...
    loop at itab1.
    collect itab1 to itab2.
    endloop.
    Action performed is ...for the same MATNR...menge gets added and saved as a single record...When matnr changes...new record is Appended
    another case is we have 3 fields in internal table
    MATNR,UNIT,MENGE
    imagine we hane the records
    Material1 KG  100
    Material1 LT   20
    Material1 LT   200
    MAterial2 KG 100
    in this case...the output will be
    Material1 KG 100
    Material1 LT  220
    MAterial2 KG 100
    Reason is that the fields before the addable value is checked for similarity..
    here field UNIT is also checked and also MATNR before adding up....
    Hope it gave you some alternative idea to proceed with....
    Reward if helpful
    Regards
    Byju

Maybe you are looking for

  • Animated .gif file correction and image ready help.

    Hi, I have an animated gif created in an early verison of Image Ready & Photoshop. I need to make some changes. I have two problems. A: Can't figure how to do it in the current version of Photoshop. B: Open in the old image ready version, can't find

  • Unable to install Power2Go & Trend Micro antivirus after upgrade to windows 7

    Hi. Recently I received my free windows 7 Upgrade Kit from Lenovo. (fulfillment) Installed it and inserted the driver dvd to install the drivers from the dvd automatically. Everything went fine but the power2go software wasn't installed. Downloaded t

  • PDF documents open as a blank page.

    I have downloaded Adobe Acrobat X onto my new computer running Windows 7 but cannot open documents like pdf online credit card statements online.  All I get is a blank page.  Also, I cannot download a pdf from an email as a pdf.  The option I get to

  • DMS Connector error while creating folder and uploading document.

    Hi, I have configure DMS connector on Portal with ECC. We are able to see /dmsrm -->Dynamic folder and also variant available in ECC and files in variant. When i try to create new folder in variant, i am unable to create folder . It give me error. Th

  • Problem creatin ExplicitFormField with RTL

    I wanted to create a formField that I will use, so I started with the examples you have on the site. since I have changed the default configuration, i deleted the lines in your examples that defines family, fonts-size and line break. what happened is