【问题标题】:Dynamically positioning a GWT widget动态定位 GWT 小部件
【发布时间】:2013-03-28 12:09:36
【问题描述】:

我的目标是拥有一个带有背景图像的按钮,并在这些按钮之上放置一个标签。 我想将标签放在按钮的中心并垂直对齐它的文本。我希望按钮按标签中的字符数扩展。当我在使用 AbsolutePanel 时遇到问题,因为它不会随其子元素动态增长,所以用于构建此类复合小部件的最佳面板类型是什么。

private PushButton button;
private Label label = new Label();
private AbsolutePanel panel = new AbsolutePanel();
private Image image = new Image("images/rectangle_blue.png");

public ExpandingRectangularButton(String text)
{
    label.setText(text);
    String width = "120px";
    String height = "160px";
    image.setWidth(width);
    image.setHeight(height);
    button = new PushButton(image);

    panel.add(button, 0, 0);
    panel.setWidth(width);
    panel.setHeight(height);
    initWidget( panel );
}

在这种情况下,最好使用哪种类型的面板?我已经尝试过流、水平和弹性表,但我无法让它们正确地将小部件堆叠在一起

【问题讨论】:

  • 您是否尝试过使用 CSS 来做到这一点.. 您可以将图像保留为标签的 bg,文本对齐:中心

标签: gwt


【解决方案1】:

FlowPanel??.

FlowPanel 以定向流的形式排列组件,就像段落中的文本行一样。

【讨论】:

  • 如何使用流程面板在图像上放置标签?
  • 我的选择是使用safehtml..而不是多行java代码。
  • 我同意SCK,你可以将图片设置为FlowPanel的背景,并将Label放在FlowPanel中。
  • @NickD 很好。 :)。我只是建议使用 flowpanel。在 flowpanel 之后,我们可以通过多种方式实现。
猜你喜欢
  • 2018-11-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-15
相关资源
最近更新 更多