如何使用按钮列表(gwt)进行onclick

i34xakig  于 2021-08-20  发布在  Java
关注(0)|答案(0)|浏览(203)

如何使用按钮列表进行onclick。我知道onclick只对按钮起作用,但是在页面上我会有很多按钮。我需要执行下一步->如果单击的值等于或小于30,则在屏幕9上显示x个新的随机数。如果单击的值大于30,则弹出消息“请选择一个小于或等于30的值”。但我不能,因为我不知道如何从垂直窗格中再次单击take按钮

@Override
    public void onModuleLoad() {

        VerticalPanel mainButtons = new VerticalPanel();
        VerticalPanel buttonPanel = new VerticalPanel();

        Button sendButton = new Button("Enter");
        Button sortButton = new Button("Sort");
        Button resetButton = new Button("Reset");

        List<Button> buttons = new ArrayList<>();
        TextBox numberField = new TextBox();

        mainButtons.add(sortButton);
        mainButtons.add(resetButton);
        mainButtons.add(buttonPanel);

        RootPanel.get("nameFieldContainer").add(numberField);
        RootPanel.get("sendButtonContainer").add(sendButton);

        sendButton.addClickHandler(new ClickHandler() {
            @Override
            public void onClick(ClickEvent event) {

                if(numberField.getText()!= null && !numberField.getText().equals(" ")) {

                    int numberOfButtons = Integer.parseInt(numberField.getText());

                    for(int i = 0; i < numberOfButtons; i++){
                        int randomNumber = (int) (Math.random() * 1000);
                        buttons.add(new Button(randomNumber + ""));
                    }

                    for(Button button: buttons){
                        buttonPanel.add(button);
                    }

                    RootPanel.get("mainButtons").add(mainButtons);
                    DOM.getElementById("intro").getStyle().setDisplay(Style.Display.NONE);
                    DOM.getElementById("mainButtons").getStyle().setDisplay(Style.Display.BLOCK);
                }
            }
        });

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题