可以更改Wicket的活动指示器的颜色吗?

| 情况:我正在处理Wicket的
IndicatingAjaxButton
。我在具有黑色背景的页面上设置了按钮。当用户按下按钮时,按钮的活动指示灯熄灭并旋转,直到系统准备好继续运行为止。 问题:由于背景为黑色,因此指示器看起来很糟。由于指示器的一部分是黑色动画,因此在黑色背景上使用指示器会丢失一些细节。 问题:在Wicket中是否可以更改
IndicatingX
[Button,Link等]的颜色,还是必须以新的方式设计页面?     
已邀请:
这是不可能的。好吧,不是以编程方式。 Wicket的活动指示器/ th子/旋转器实际上不过是动画GIF。它位于   
[your version of Wicket here]\\wicket-src\\wicket\\src\\main\\java\\org\\apache\\wicket\\ajax\\indicator.gif
并在
AbstractDefaultAjaxBehavior
中引用。 要更改颜色,您可以创建自己的相同大小的GIF动画,并覆盖默认发行版中包含的动画。 编辑: 好的,写完之后我以为“必须有免费的可用图标”,并通过Google Image Search提出了这个建议: http://blogs.msdn.com/blogfiles/gduthie/WindowsLiveWriter/Needananimatedloadingicon_B811/ajax-loader_2.gif 我认为它是免费的并且不受限制,但是我没有仔细检查。除了用于个人玩具/示例应用程序之外,还应检查自己是否将其用于其他用途。     
因此,背负Torgamus勋爵提供的内容,您可以添加一个这样的类:
abstract class OnBlackIndicatingAjaxButton extends AjaxButton implements
  IAjaxIndicatorAware {
    private final AjaxIndicatorAppender indicatorAppender = new
      AjaxIndicatorAppender() {
        @Override
        protected CharSequence getIndicatorUrl() {
            return \"http://blogs.msdn.com/blogfiles/gduthie/WindowsLiveWriter/Needananimatedloadingicon_B811/ajax-loader_2.gif\";
        }
    };

    public OnBlackIndicatingAjaxButton(String id) {
        super(id);
        add (indicatorAppender);
    }

    public OnBlackIndicatingAjaxButton(String id, Form<?> form)
    {
        super(id, form);
        add (indicatorAppender);
    }

    /**
     * @see IAjaxIndicatorAware#getAjaxIndicatorMarkupId()
     * @return the markup id of the ajax indicator
     * 
     */
    public String getAjaxIndicatorMarkupId()
    {
        return indicatorAppender.getMarkupId();
    }
}
并将其用于您的任何页面。     

要回复问题请先登录注册