[Gvsig_desarrolladores] fichas automatizadas
Elder Robert Zavaleta Veneros
erobert_zv en hotmail.com
Jue Sep 17 20:58:57 CEST 2009
hola Fran:
Agradecerte por la ayuda prestada
atte.
Robert Zavaleta
> Date: Wed, 16 Sep 2009 09:50:55 +0200
> From: fpenarru en gmail.com
> To: gvsig_desarrolladores en listserv.gva.es
> Subject: Re: [Gvsig_desarrolladores] fichas automatizadas
>
> Hola Elder.
>
> Hay que habilitar una extensión que lleva gvSIG desactivada por defecto
> (Ventana | Preferencias | General -> Extensiones ->
> com.iver.cit.gvsig.TagExtension) y reiniciar. En la toolbar Mapa
> aparecen 2 iconos azules (solo cuando hay algo seleccionado en un
> layout). El del símbolo + añade un tag a cualquier elemento del mapa.
> Esto sirve para marcar los campos que queremos rellenar. Al abrir el
> layout, se recorren todos los elementos comprobando su tag. Si lo
> encuentra, sustituye la cadena con lo que toca, o situa el extent del
> FFrameView en el sitio correcto, etc.
>
> Solo un apunte al código que te han pasado. Si tienes muchos tags, es
> preferible no usar esa función getFFrameByTag (salvo por motivos de
> claridad en el código,eso sí), porque entonces recorres todos los
> FFrames cada vez que buscas un tag. Yo prefiero dar una sola pasada por
> todos los FFrames y dentro del bucle comprobar si el FFrame tiene tag, y
> caso de que lo tenga, asignar el valor correspondiente. Es decir, un
> bucle con unos cuantos IF dentro. Si tienes pocos tags, da igual, no se
> pierde casi tiempo.
>
> Ejemplo:
>
> LayoutContext lc = newLayout.getLayoutContext();
> IFFrame[] frames = lc.getFFrames();
> for (int i=0; i < frames.length; i++) {
> if (frames[i].getTag() != null) {
> if (frames[i].getTag().equalsIgnoreCase("FECHA")) {
> FFrameText txtFecha = (FFrameText) frames[i];
> txtFecha.clearText();
>
> SimpleDateFormat df = new
> SimpleDateFormat("dd/MM/yyyy");
> txtFecha.addText(df.format(new Date()));
> }
> if (frames[i].getTag().equalsIgnoreCase("ESCALA")) {
> FFrameText txtEscala = (FFrameText) frames[i];
> txtEscala.clearText();
> txtEscala.addText("1/" + scale);
> }
> if (frames[i].getTag().equalsIgnoreCase("TITULO")) {
> FFrameText txtTitulo = (FFrameText) frames[i];
> txtTitulo.clearText();
> txtTitulo.addText(title);
> }
> ... etc
>
> Saludos
> Fran Peñarrubia
> www.scolab.es
>
>
> Elder Robert Zavaleta Veneros escribió:
> >
> > Hola Cesar muy agradecido por tu respuesta, pero tengo una unica duda
> > cuando creo mi plantilla(.gvt) he inserto textos,vista no se como
> > configurarlos para que la
> > getFFrameByTag("provinciatag",layout, frames) reconozca el primer
> > parametro "provinciatag"
> >
> > mas claro que es "provinciatag", supongo que debe ser una texto al
> > cual le asigno
> > un valor por codigo, como puedo hacer para configurar ese parametro en
> > mi plantilla(.gvt) y para que despues lo
> > llame desde codigo
> >
> > por ejemplo:
> >
> >
> > IFFrame texto=getFFrameByTag("provinciatag",layout, frames);
> >
> > ((FFrameText)texto).clearText();
> >
> > ((FFrameText)texto).addText("PROVINCIA :"+fg.getProvincia());
> >
> >
> >
> > en ese codigo asignas el valor de que te da fg.getProvincia()); ha
> > provinciatag
> >
> > como lo configuro en mi plantilla.
> >
> >
> > Atte.
> > Robert Zavaleta
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
_________________________________________________________________
Windows Live™: Keep your life in sync. Check it out!
http://windowslive.com/explore?ocid=TXT_TAGLM_WL_t1_allup_explore_012009
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listserv.gva.es/pipermail/gvsig_desarrolladores/attachments/20090917/881bb036/attachment.htm
More information about the gvSIG_desarrolladores
mailing list