How to add button to Table View and initiate action?

hello,
i'm new to Javafx 2, i recently followed the tutorial on tableview and would like to add a deletion action on particular row. What i had in mind was to add a delete button on the last column of each row, when clicked it will fire a handler and remove that row from the data observablelist. how do i do that?
please advice,
wesley

Hi,
Please find the below code. I am creating a table view with two columns. The second column consists of delete button.
TableVeiw table = new TableView();
/*First column*/
final TableColumn<String> titleCol = new TableColumn<String>("Title");
titleCol.setProperty("title");
/*Second column*/
TableColumn<String> actionCol = new TableColumn<String>("Action");
actionCol.setCellFactory(new Callback<TableColumn<String>, TableCell<String>>() {
      @Override
      public TableCell<String> call(TableColumn<String> param) {
             final TableCell<String> cell = new TableCell<String>() {
                      @Override
                      public void updateItem(String value, boolean empty) {
                            super.updateItem(value, empty);
                            final VBox vbox = new VBox(5);
                            Image image = new Image(getClass().getResourceAsStream("/images/delete.png"));
                            Button button = new Button("", new ImageView(image));
                            button.getStyleClass().add("deleteButton");
                            final TableCell<String> c = this;
                            button.setOnAction(new EventHandler<ActionEvent>() {
                                  @Override
                                  public void handle(ActionEvent event) {
                                          TableRow tableRow = c.getTableRow();
                                          Item item= (Item) tableRow.getTableView().getItems().get(tableRow.getIndex());
                                          /* TODO : Delete this item from your data list and refresh the table */
                      vbox.getChildren().add(button);
                      setGraphic(vbox);
        cell.setAlignment(Pos.TOP_RIGHT);
        return cell;
grid.addColumns(titleCol,actionCol);I hope this can help you. :)
Edited by: Sai Pradeep Dandem on Aug 18, 2011 10:04 PM

Similar Messages

  • Create Tabular Form wizard - how to add rows to Table / View Owner list?

    Create Tabular Form wizard asks to choose "Table / View Owner"
    How to add additional schemas/users to this "Table / View Owner" dropdown list?

    Next step:
    I tried to create 2nd application - and it sees and allows to select from schemas I added in previous step.
    Then I tried to add 1 more schema - and 2nd application can't see it...
    I create 3rd application and select 1st schema (assigned when workspace was created) - and it sees only this one schema
    I create 4th application and select another schema (added in previous steps) - and it sees 2 schemas from 4 assigned
    what is this?
    how to live with it?

  • How to add button inside move clip and call it from main timeline?

    Hi,
    On the main timeline I  have a movie clip called clock_mc and playBtn
    playBtn is  placed in the center of clock_mc
    When you press playBtn clock_mc starts playing
    playBtn.addEventListener(MouseEvent.CLICK, playClock);
    function playClock(event:MouseEvent):void
        if (event.target == playBtn)
            clock_mc.play();
            playBtn.visible = false;
            trace ("play button was clicked");
    This is working fine for me.
    But I want to add replayBtn to the last frame of clock_mc and set up the function on main Timeline.
    Another words when the clock_mc rich last frame you see replayBtn.
    code example:
    replayBtn.addEventListener(MouseEvent.CLICK, playClock);
        if (event.target == replayBtn)
            clock_mc.play();
            replayBtn.visible = false;
            trace ("replay button was clicked");
    I've tryed to placed the replayBtn on the stage on the main timeline and I've set it up to replayBtn.visible = false;
    And then I add replayBtn.visible = true; to last AS frame of clock_mc but it wont work
    Even when I put the button physically to the last frame of clock_mc it will not work either.
    Please help

    I've solved the problem:-)
    I've set replayBtn.visible = false; on first frame of clock_mc
    and  replayBtn.visible = true; at the last frame
    and than as you sugested I'v add:
    clock_mc.replayBtn.addEventListener(MouseEvent.CLICK, replayClock);
    function replayClock(event:MouseEvent):void
            clock_mc.play();
            trace ("replay button was clicked");
    I couldn't see replayBtn at the firs stage because I have clockTween assosiated with clock:
    clockTween = new Tween(clock_mc, "x", Regular.easeOut, -469,438, .5, true);
    and I had replyBtn in the wrong place so when clock_mc was coming up on the stage replayBtn was on the left side of the stage :/
    Now I have to solve only one thing.
    Maybe you would have any suggestions please.
    I've set up stop(); in a first frame of clock_mc
    that when you see clock_mc sliding in it has to wait for playBtn to be clicked
    because I have two tween:
            clockTween = new Tween(clock_mc, "x", Regular.easeOut, -469,438, .5, true);
            playTween = new Tween(playBtn, "x", Regular.easeOut, -720,514, .5, true);
            playBtn.visible = true;
    so when you click on playBtn:
    function playClock(event:MouseEvent):void
        if (event.target == playBtn)
            clock_mc.play();
            playBtn.visible = false;
            trace ("play button was clicked");
    everythink is working fine except when I clik on replayBtn it play for I sec because there is stop(); on the first frame of clock_mc

  • Urgent - How to add buttons to a Table

    How to add buttons to a Table and enable them for Mouse Listeners/ Action Listeners

    extends the defaultcellrenderer make it return a Jbutton as the component to draw.
    class OverCellRendererClass extends DefaultTableCellRenderer {
    public Component getTableCellRendererComponent(JTable table,
    Object value,
    boolean isSelected,
    boolean hasFocus,
    int row,
    int column) {
    //put your stuff here to make or get a button
    return myButton;
    Use something like this to set the renderer for the column :
    tb.getColumnModel().getColumn(4).setCellRenderer(new YourCellRendererClass());

  • How can I create a Table View in Cocoa Applescript?

    This is my last resort. I've searched for days and only found tutorials for iPhone and Cocoa, and I have no idea where to start. I'm looking for a way to create a Table View, and fill it with a few cells that call a handler when clicked. I've looked through the Xcode help, the Apple documentation, and countless tutorials, and I don't know what to do. I'm sure what I'm asking is possible, because usually what is possible in Cocoa is possible in Cocoa-Applescript.
    Perhaps something like:
    myTableView's addCell_OfType_WithHandler("This is a text cell", text, "myHandler:")
    I would appretiate any responses and brief descriptions on the matter.

    You did not answer my first question, which was not an idle question. I'll answer here, but if cross-chatter appears in a different thread I'll ignore it. You'll have to keep track of the mess yourself.
    Apple_For_The_Win wrote:
    At this point, I've dragged a Table View onto my window, in Xcode. I've connected it to the value "myTableView", and that's where I need help. I'm specifically trying to add cells into the table view.
    I'll assume that 'connected it to the value "myTableView"' means that you've control-dragged in XCode from the table view in Main Menu.xib to a property in your applescript app delegate called myTableView. If that's not the case, please correct me.
    I prefer to use an array controller for this, so please drag an array controller object into main menu.nib. once you've done that, do the following:
    open the applescript app delegate and add a new property called "tableController"
    select the table view in the object list (you may need to open some disclosure triangles to reach it). and add appropriate (an) column name(s). you can hide column titles later if you like, but having named columns makes life easier.
    select the array controller in the object list
    rename the array controller "table data"
    open the attributes inspector, and then add the column name(s) as key(s) in the object controller area
    open the bindings inspector, and where it says "controller content", open the disclosure arrow and bind the content to the App Delegate object on the model key path self.tableController
    select the table view in the object list again, then go down a level and select each column in turn
    for each column, open the bindings inspector, and where it says "value", open the disclosure arrow and bind the content to the Table Data object with the controller key arrangedObjects model key path being the name of the column (which is the name of the key in the controller as well)
    back in the applescript app delegate, add code like the following:
      -- create a list of records, where each record represents a row and the column name is the record key
      set myData to {{column_1_name:"hello"}}
      -- convert it to an NSArray and add it to the controller content. don't forget the *my* keyword, or it won't work
      set my tableController to NSArray's arrayWithArray:myData
      -- may or may not be needed
      myTableView's reloadData()
    That should populate the table with simple text. if you want something more complicated (like buttons or links) then create the more complicated elements separately and add them to the data.

  • How to create variant for table/view ?

    Hi,
    When I go through SM30, I find a radio button called variant. I don't know the effect.
    Can anyone tell me how to create variant for table / view ?
    I want to know when we need to create variant for table/view.
    Best regards,
    Chris Gu

    hi ,
    Whenever you start a program in which selection screens are defined, the system displays a set of input fields for database-specific and program-specific selections. To select a certain set of data, you enter an appropriate range of values.
    For further information about selection screens, refer to Selection Screens in the ABAP User's Guide.
    If you often run the same program with the same set of selections (for example, to create a monthly statistical report), you can save the values in a selection set called a variant
    Procedure
    To create a new variant:
           1.      On the ABAP Editor initial screen, enter the name of the program for which you want to create a variant, select Variants, and choose Change.
           2.      On the variant maintenance initial screen, enter the name of the variant to be created.
    Note the naming convention for variants (see below).
           3.      Choose Create.
    If the program has more than one selection screen, a dialog box for screen assignment appears. The dialog box does not appear if the program only has one selection screen. The selection screen appears in this case.
           4.      If there is more than one selection screen, select the screens for which you want to create the variant
    5.      Choose Continue.
    The (first) selection screen for the report appears.
    If your program has more than one selection screen, use the scroll buttons in the left-hand corner of the application toolbar to navigate between them and to fill the fields with values. If you keep scrolling forwards, the Continue button appears on the last selection screen.
           6.      Enter the desired selection values, including multiple selection and dynamic selection.
           7.      Choose Continue.

  • How to use buttons in hcm process and forms?

    Hi Experts,
    I want to know how to use buttons in HCM process and form.
    And when i click on the button it was validating all the fields and it was throwing an error ( complete SACHP fields) i am not using this filed in any where of my form.
    So, please help in getting out of this error. And help me with some document, which method will  trigger once we click on the button.
    Thanks & Regards,
    Rocky

    You do not need to add this field to your list. In the view V_T588MFPROPS (SAP delivered), this field is set as mandatory. In configuration, you must maintain the view V_T588MFPROPC (Customer area) and make sure the field is not set to mandatory. This will override the SAP delivered setting and the error message will be not be displayed.
    Derrick Banks
    Banks & Company, LLC

  • HT5361 When inserting pictures in a new mail message using the " photo browser" button I can view and select photos but the " choose "  button is gone. What have I done wrong?

    When inserting pictures in a new mail message using the " photo browser" button I can view and select photos but the " choose "  button is gone. What have I done wrong?

    Hi Liz,
    Sorry to hear you are having a similar problem.  Last night I went to the tool bar at the top of iphoto, clicked on "File",  then clicked "Browse Backups" in the drop down menu.    I have an external hard drive that is set up to Time Machine.   The Browse Backups  opened the iphoto pages in the Time Machine.  I selected a date one day ahead of the day I performed the now infamous update, and it showed my iphoto library as it had existed that day.   I then clicked  "Restore Library" at the bottom right corner of the Time Machine screen.   Roughly 2 hours later my iphoto was back to normal.   When I opened iphoto there was a message saying I need to upgrade my program to be compatible with the new version of iphoto(version 9.2.1).  I clicked "Upgrade" and within seconds it had done whatever upgrading it needed to do. 
    The only glitch in the restoration was that it restored the library as it appeared last week, so I no longer had photos I had imported this past weekend.   I simply went back to the Browse Backups in the drop down menu,  when Time Machine opened I selected the page showing my pictures from this weekend and again said to Restore Library.   Roughly 45 minutes later the library was restored including the most recent photos.  
    I am now a happy camper. 
    I don't know if any of this will be of help to you because your email says you are having trouble with photos imported after the upgrade was performed.   Have you had any pop up notices when you first open iphoto,  that tell you you need an upgrade to be compatible with the new iphoto?     If so have you clicked "upgrade"? 
    Good luck Liz,  if you have Time Machine running as a back up to your library, maybe you wil be able to get help there, by following my instructions above.   Otherwise,   good luck with your investigations.   I'd be interested in hearing how you make out.
    Karen

  • How to create links in table view

    Hi
    I am working in IC WebClient.
    Can any body guide me how to create link on particular column of the table view and How can we navigate to another page by clicking on this link ?
    I am filling the internal table (for table view) by z tables. I do not have context node for that.
    Points will be rewarded.

    use Iterators. In the itarator you can create any BSP Object you wish to.
    in the method RENDER_CELL_START of the interface IF_HTMLB_TABLEVIEW_ITERATOR
    METHOD if_htmlb_tableview_iterator~render_cell_start.
      DATA: lo_text     TYPE REF TO cl_htmlb_textview,
            lo_link TYPE REF TO cl_htmlb_link,
            lv_link_click TYPE string,
            lv_link  TYPE string,
            lv_dim   TYPE string,
            lv_pernr TYPE string.
      FIELD-SYMBOLS: <dat> TYPE ANY.
      lv_link  = 'info.htm?pernr='.
      lv_dim   = 'left=300,top=220,width=620,height=200,menubar=0,scrollbars=yes,resizable=no'.
      row_ref = p_row_data_ref.
      CASE p_column_key.
        WHEN 'PERNR'.
          CREATE OBJECT lo_link.
          lo_link->id            = p_cell_id.
          lo_link->text          = get_column_value( p_column_key ).
          CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
            EXPORTING
              input  = lo_link->text
            IMPORTING
              output = lv_pernr.
          CONCATENATE `window.open('` lv_link lv_pernr `' , '` lo_link->text `', '` lv_dim `');` INTO lv_link_click.
          lo_link->text = lv_pernr.
          lo_link->onclientclick = lv_link_click.
          p_replacement_bee      = lo_link.
        WHEN OTHERS.
          CREATE OBJECT lo_text.
          lo_text->id       = p_cell_id.
          lo_text->wrapping = 'FALSE'.
          lo_text->text     = get_column_value( p_column_key ).
          lo_text->design   =  'STANDARD'.
          p_replacement_bee = lo_text.
      ENDCASE.
    ENDMETHOD.
    How to use Iterators.
    /people/brian.mckellar/blog/2003/10/31/bsp-programming-htmlb-tableview-iterator
    Hope this helps.
    Cheers
    Amandeep
    <i><b>Reward points for each helpful answer.</b></i>

  • How to add my html title tag and html meta name and meta keywords

    how to add my html title tag and html meta name and meta keywords in iweb 09

    Like you will see on Roddy's page iWeb SEO Tool will do the job very easily:
    Click to view full size
    Click to view full size
    It remembers what tags went to which pages so they are easily reapplied when you have to republish.
    OT

  • How to block user create personal view and select ALL VIEW?

    How to block user create personal view and select ALL VIEW?

    Hello,
    >create personal view
    To restrict creating personal view, you need to modify your existing permission level or create new one. Login with admin account to your site and open role.aspx page (http://siteurl/_layouts/role.aspx). Then click on existing permission or add new permission
    level-->and move to "Personal Permissions" section-->uncheck "Manage Personal Views - Create, change, and delete personal views of lists" option. Later you can assign this permission to all users, whom you don't want
    to allow to create.
    >and select ALL VIEW
    Since SP does not supports view level permission directly so you have to use custom solution or use below designer solution to restrict user to open any view.
    http://www.codeproject.com/Articles/433486/How-to-set-view-level-permissions-out-of-the-box-i
    Hope it could help
    Hemendra:Yesterday is just a memory,Tomorrow we may never see
    Please remember to mark the replies as answers if they help and unmark them if they provide no help

  • How can we delete SID table data and Text table data

    Hi,
    How can we delete SID table data and Text table data of any
    InfoObject.

    Hi,
    Go to transaction SE14, give the technical name if the table:
    /BIC/T<InfoObject Name>   for Text Table
    /BIC/S<InfoObject Name>  for SID Table
    Select "Table" in the given 4 options below  &  hit Edit button.
    in the next screen select "Direct"
    & also select "detele data" radio button.
    & hit  "Activate & adjust database".
    this will delete the complete data from the tables.
    Note: before deleting the SID's make sure of the consequences & after effects.
    Also the SID gets generated the next time you load master data/transaction data only for those records which were loaded..
    Regards,
    Iliyas

  • How to add radiobutton in table control

    dear all
    i want to add radiobutton in table control and want to select the corresponding data
    & display that selected data in another screen
    please guide.
    Moderator Message: Please search for available information before posting.
    Edited by: kishan P on Jun 3, 2011 4:08 PM

    Hi,
    Go through the below link.
    <<link removed by moderator>>
    Hope it will be useful to you.
    Edited by: kishan P on Jun 3, 2011 4:07 PM

  • How to add new currency in ORCO and ORBO

    Hi, I have successfully install ORCO, ORBO and ORPOS. I followed Implementation Guide, Volume 1 – Implementation Solutions to add new currency in ORPOS.
    But I still do not know how to add new currency in CO and BO.
    I try to use import parameter feature in ORCO and ORBO to import xml, the result said "Success" but there is no changes.
    Please help show how I could achieve this.

    I change the FL_CNY_BASE into 1 already. POS is OK now. But BO is not regconize that there is a new currency. I'm trying to go to
    Admin -> Job Manager -> Available Import -> Import BackOffice Parameters
    and try to import xml file that contain belowing content.
    <?xml version="1.0" encoding="UTF-8" ?>
    <CurrencyImport xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="CurrencyImport.xsd" Priority="0" FillType="FullIncremental" Version="1.0" Batch="1" CreationDate="2001-12-17T09:30:47.0Z" ExpirationDate="2027-12-17T09:30:47.0Z">
    <!-- Example of adding a Currency. -->
    <Currency ChangeType="ADD" ISOCode="MYR" IssuingCountryCode="MY" Name="MYR" IssuingCountryNationality="Malaysian" IsBaseCurrency="true" Scale="2" Priority="0" />
    <ExchangeRate ChangeType="ADD" CurrencyCode="MYR" MinimumAmount="0.00" EffectiveDate="2008-05-26" ExpirationDate="2050-06-02" ToBuyAmount="2" ToSellAmount="2" ServiceFeeAmount="0.00" />
    </CurrencyImport>
    The result said it success but I still cannot see any change.
    Is there is any other things I should make change at BO? Any property file that I should make change? BO and CO is web application so the structure of files are not the same as POS. I can't following the same thing when I had made with POS for BO and CO.
    Thanks for you helping

  • Documentation on table, view and procedures of the user portal

    Where can I find documentation on table, view and procedures of the portal user?
    Thanks.

    PL/SQL API doc here :
    http://www.oracle.com/technology/products/ias/portal/html/plsqldoc/pldoc1014/summary.html
    VIEWS doc here :
    http://download-uk.oracle.com/docs/cd/B14099_19/portal.1014/b14135/pdg_cm_api.htm#CHDIFAGE

Maybe you are looking for