2012-02-15 10 views
11

Bueno, la pregunta puede parecer estúpida, pero realmente no puedo entenderlo. ¿Cómo se puede agregar dinámicamente una etiqueta de encabezado html a su página utilizando el kit de herramientas web de google?cómo agregar una etiqueta h1 con gwt

No quiero hacer esto por el estilo del encabezado ya que podría agregar cualquier estilo a cualquier etiqueta, es porque quiero usar el jqueryui accordion que funciona con un par de encabezado y panel de contenido.

¿Cómo puedo hacer esto?

+0

También hay [HeadingElement] (http://google-web-toolkit.googlecode.com/svn/javadoc/2.4/index.html?overview-summary.html), que le permite crear elementos H1-H6. –

+0

¿Cómo harías eso? –

+0

Mire la respuesta justo debajo, explica cómo usar HeadingElement. – David

Respuesta

18

Si esto se complica un poco por decir lo menos .... Aquí está el ejemplo easiast se me ocurre:

import com.google.gwt.dom.client.Document; 
import com.google.gwt.dom.client.HeadingElement; 

... 

HeadingElement headingElement = Document.get().createHElement(1); 
headingElement.setInnerText("This is a Heading1 (h1) element!"); 
RootPanel.get().getElement().appendChild(headingElement); 

Si nos fijamos en los otros métodos de la Document.get().... encontrará métodos para crear todos los demás elementos HTML también.

Adición:

Esto podría ser aún más fácil:

import com.google.gwt.user.client.ui.HTML; 
..... 
HTML headingElement= new HTML(); 
headingElement.setHTML("<h1>This is a Heading1 (h1) element!</h1>");   
RootPanel.get().getElement().appendChild(headingElement); 
+0

Muchas gracias, eso fue todo un truco, pensé que habría un objeto para cualquier etiqueta HTML o algo así. Algo así como: 'Encabezado h1 = nuevo encabezado (" este es mi encabezado "); RootPanel.get ("divid"). Add (h1); ' – David

+0

No es bienvenido – Stefan

+0

No sé si es bueno o malo, pero día a día estoy creciendo tan dependiente de SO que me resulta difícil codificar cuando internet es lento, porque no puedo conectarme a SO entonces – SexyBeast

-1

Aquí está mi solución de Java:

InlineHTML h6_Text = InlineHTML.wrap(Document.get().createHElement(6)); 
h6_Text.setText("The text between <h6> and </h6>"); 
10

También puede utilizar HTMLPanel y especificar qué etiqueta para su uso en el constructor:

HTMLPanel header = new HTMLPanel ("h1", "bla bla bla"); 

debe producir

<h1>bla bla bla</h1> 
+0

Mucho más fácil y más limpio que la respuesta aceptada. –

Cuestiones relacionadas