java - 如何更改点击时的标签颜色?

标签 java user-interface gwt onclick label

如果我尝试运行 for 循环直到 10,它会继续打印相同的标签 10 次。如果我改变直到 function.size ,它将打印函数次数。 颜色仅在相同标签内发生变化,不会影响其他标签。 我有变量是要打印在标签上的字符串,我应该如何将字符串分配给 ArrayList? 最终列表标签 = new ArrayList();

                for(int k = 0; k <=1; k++) {
                     final Label label = new Label(FDTO.getFunctionName());

                   // final  Label functionLabel = new Label(FDTO.getFunctionName());
                    label.addClickHandler(new ClickHandler() {     

                    public void onClick(ClickEvent event) {

                         for(Label otherLabel  : labels)
                             otherLabel.getElement().getStyle().setColor("black");
                        // functionLabel.getElement().getStyle().setColor("red");
                        label.getElement().getStyle().setColor("red");
                        checkChild(FDTO.getFunctionCode(), functions, qaDTO, val);
                    }
                });

                    labels.add(label);


                    childPanel.add(label);
        }

最佳答案

在您的 ClickHandler 中,您只需将所有其他标签的颜色设置回默认值(黑色?)。

otherLabel.getElement().getStyle().setColor("black");

如果有许多其他标签,您应该考虑将它们保存在列表中。请尝试这个小例子:

final List<Label> labels = new ArrayList<Label>();

for(int i = 0; i < 10; i++) {
    final Label label = new Label("Hello " + i);
    label.addClickHandler(new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            // change all labels color back to default
            for(Label otherLabel : labels)
                otherLabel.getElement().getStyle().setColor("black");

            // change current label color 
            label.getElement().getStyle().setColor("red");
        }
    });

    // add to list
    labels.add(label);

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

关于java - 如何更改点击时的标签颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56873781/

相关文章:

xml - GWT - Module.gwt.xml - XML 验证警告

java - 将 Java 应用程序从 Eclipse 提交并推送到 Openshift 服务器时出错(不支持交换机中的字符串)

java - 将 Blob 值从 JTable 单元格显示到 JLabel

ios - 为 iOS 中的 View 使用 HTML 或任何标记语言

gwt - 在 GWT RPC 调用中编码请求负载

java - 在哪里配置使用 GWT uploader 上传文件的路径?

java - 在服务器中部署后出现错误的 SQL 语法异常

java - 循环在要求用户输入新输入之前执行所有操作,而不是仅仅按照应有的方式重新请求

java文件选择器

java - Android:WAITING按钮点击