Pergunta

Estou trabalhando em um projeto para o qual estou usando GWT-GRAPHICS. Eu tenho área de desenho contendo elipse e texto. Quando clico duas vezes neles, um menu pop-up aparece e oferece a opção de inserir o texto. Agora, quando salvo este texto, quero que ele apareça nesta área de desenho no local do texto anterior.

Estou tentando fazer isso, mas sem sorte. Ele mantém o texto antigo e, além disso, inclui o texto atual. Existe uma maneira de ter apenas o novo texto para aparecer.

Qualquer entrada será de grande ajuda. Obrigada.

Foi útil?

Solução

Para mim, isso parece que você está adicionando um novo elemento de texto em vez de usar o existente. Eu escrevi um teste rápido e parece funcionar como você deseja:

public class GwtTest2 implements EntryPoint {

    private Text text;

    public void onModuleLoad() {

        DrawingArea da = new DrawingArea(400, 400);
        RootPanel.get().add(da);
        da.addClickHandler(new ClickHandler() {

            @Override
            public void onClick(ClickEvent event) {
                String newTextValue = Window.prompt("", "");
                text.setText(newTextValue);
            }
        });

        Ellipse ellipse = new Ellipse(200, 200, 100, 50);
        da.add(ellipse);

        text = new Text(150, 200, "Hello world!");
        da.add(text);
    }
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top