开发者

Select action from listbox, perform it on ticked values in GWT

开发者 https://www.devze.com 2023-01-21 11:32 出处:网络
This is my working code. What I was thinking of doing, is to add a few check boxes, and select an option from the List box. That option is applied to the ticked values, after clicking the apply button

This is my working code. What I was thinking of doing, is to add a few check boxes, and select an option from the List box. That option is applied to the ticked values, after clicking the apply button, preferably an async call. is that possible? I tried a few things like setting a listener for the button and then trying to get the ticked values, and run a query, or just output them.

public void onModuleLoad() {

    VerticalPanel panel = new VerticalPanel();
    Button applyButton = new Button("Apply");
    ListBox box = new ListBox(false);

    CheckBox cb = new CheckBox();
    TabPanel tabpanel = new TabPanel();
    FlowPanel flowpanel;

    flowpanel = new FlowPanel();
    flowpanel.setSize("500px", "250px");
    flowpanel.add(cb);

    tabpanel.add(flowpanel, "All");

    flowpanel = new FlowPanel();
    tabpanel.add(flowpanel, "Active");

    flowpanel = new FlowPanel();
    tabpanel.add(flowpanel, "In-active");

    tabpanel.selectTab(0);
    tabpanel.setSize("500px", "250px"开发者_运维问答);

    box.addItem("Set Active");
    box.addItem("Set In-Active");


    panel.add(box);
    panel.add(applyButton);
    panel.add(tabpanel);

    RootPanel.get().add(panel);

}

Thanks.


Something like that? Gathering the selected option as well as the checked items to send those values for processing to the server (do that in the onClick method):

    public void onModuleLoad() {
        final CheckBox[] items = new CheckBox[3];
        items[0] = new CheckBox("item 1");
        items[1] = new CheckBox("item 2");
        items[2] = new CheckBox("item 3");
        final ListBox options = new ListBox();
        Button apply = new Button("apply");
        FlowPanel panel = new FlowPanel();
        panel.add(items[0]);
        panel.add(items[1]);
        panel.add(items[2]);
        panel.add(options);
        panel.add(apply);

        options.addItem("option 1");
        options.addItem("option 2");

        apply.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                String selectedOption = options.getValue(options.getSelectedIndex());
                System.out.print("Apply " + selectedOption
                        + " to: ");
                for (CheckBox checkBox : items) {
                    if (checkBox.getValue()) {
                        System.out.print(checkBox.getText());
                    }
                }
                System.out.println();
            }
        });

        RootPanel.get().add(panel);
    }

Or should the ListBox contain the action (have a look at the Command interface of GWT) which should be applied on the selected check boxes?

0

精彩评论

暂无评论...
验证码 换一张
取 消