Agrandar la caja de texto en illustrator
Hola buenas me gustaría saber como se puede agrandar una caja de texto en illustrator manteniendo la proporcion el tamaño de la fuente que tiene dentro.
Buenos días.
Yo uso Illustrator CS4 en mac y si puedo hacer eso que dices. He probado a hacerlo de dos formas con resultado satisfactorio. Una es con la herramienta de selección. Pinchando sobre los nodos de la caja de texto y estirando. Otra es, cuando estás usando la herramienta "Texto" si (en Mac) pulsas la tecla "cmd" el cursor cambia y aparece la herramienta de selección y estirando desde el nodo de la caja de texto transformas esta a tu antojo. En los dos casos he modificado la proporción de la caja tirando del nodo inferior derecho.
Otra cosa. Tienes que haber creado una caja de texto para poder modificarla. Según creo, si lo que has hecho ha sido marcar con el cursor (con la herramienta de texto) donde quieres empezar a escribir y no has creado la caja, al no existir no la puedes modificar. Por eso siempre has de crear la caja de texto y luego escribir dentro. A no ser que vayas a escribir sólo una palabra o un título.
Espero que te sirva mi explicación.
Un saludo.
Nacho Cuevas.
El mensaje fue actualizado por: Nacho Cuevas
Similar Messages
-
[Ai CS4 - MAC] Unir varias cajas de texto en una sola.
Buenos días a todos.
Tengo varios documentos de adobe illustrator que he creado rescatados de documentos pdf y las cajas de texto, (en cada documento había una caja con unas 10/12 líneas), se han dividido en un montón de cajas de texto que se hacen imposibles de editar de una forma rápida.
¿Existe alguna manera de unir todas esas cajas de texto de nuevo sin tener que picar todo el texto?.
Muchas gracias.
Un saludo.
Nacho CuevasHola Nacho,
Mira a ver si en el panel de Capas (F7) localizas esos marcos y puedes leer el texto, prácticamente seguido, de abajo hacia arriba, si es asi es que están bien ordenados, si no arrastra unos niveles sobre otros para que lo estén, Seguramente han salido bien al abrir o colocar aquí.
Bien ahora agarrate que arrancamos:
Selecciona todas las cajas (marcos de texto) con la H. de Selección, y LAS CORTAS.
Cambia a la H. de Texto y bien arrastra para crear un marco de texto o pincha para crear un punto de inserción de texto, y entonces, simplemente PEGA.
Ya esta!
(Bueno, quizas tengás que meter algun espacio entre los bloques de palabras de cada marco inicial) -
Pegar objetos en la caja de texto
Hola, en algunas ocasiones en las cajas de texto necesito colocar pequeños objetos para señalar contenido, así como puntos y flechas vectorizadas. El problema esta en que no puedo cortar y pegar este ojeto en la caja de texto, ¿Hay alguna manera de poder hacerlo?, gracias.
Te recomiendo un programita que se llama PopChar que te enseña todos los caracteres de un tipo y te permite añadirlo a la caja de texto que estés usando en el programa que sea. Así podrás disponer de esos pictogramas que te comenta Federico en el momento que necesites.
Yo lo uso en todos mis macs. Para PC también hay una versión pero no la he probado nunca.
Un saludo.
Nacho Cuevas.
http://www.ergonis.com/
(Mac y PC) -
Filtros de texto en Illustrator
Hola foreros
Soy nuevo aqui y necesito vuestra ayuda:
Estoy maquetando en illustrator 10 (obvio Mac) y tengo que plantar 16 idiomas diferentes, chino, koreano, japo, ruso, serbio, etc.
El punto esta que visualizo perfecto desde word y simple text todos los caracteres; cuestion que en Illust no.
Segun estuve indagando el programa trae unos filtros (en pluggins) de texto y todos los que mencione no estan, asi que la pregunta es:
¿donde se consiguen esos filtros para que pueda realizar el trabajo sin necesidad de trazarlos y todo esa historia?
Gracias de antemano, muy bueno el foro.
Salu2, eNanoHola...
Sabes que revise mi ill CS y no vi los plug-ins por ningun lado, lo que yo creo... es algo con el sistema operativo acuerdate que el al momento de instalarse te pregunta si quieres el soporte para otros idiomas, ruso, chino, ect... yo no lo coloque en la instalacion y siempre que uso otro idioma "raro" me salen signos de interrogacion...
SI ES ESO LO QUE TE PASA....
Ya que en mi otro mac si tiene el soporte y si las leee...
Espero que te sirva de algo... -
Textos entre InDesign e Illustrator
Hola Gente! Quisiera saber por que cuando corto y pego un texto desde Illustrator en Indesign fragmenta el bloque de texto en lineas separadas, sin poderlo editar como un todo? Alguien sabe como solucionar esto? Muchas Gracias
Brevemente
1. No, no dudo que podría ser útil.
2. Tampoco, si tiene en cambio: ajustar a guías, alinear y distribuir objetos, repetir transformaciones e incluso secuencias de (varias) transformaciones (consecutivas).
Para mover justo a 45º desplazar manteniendo pulsada la tecla May, (Igual que en illustrator o Photoshop).
inDesign es una aplicación para maquetar toda clase de documentos, p. ej. revistas, no pretende reemplazar a programas tipo Illustrator (FH, CDR,...)donde las posibilidades que comentan son mas necesarias y utilizadas. -
Aplicar Efectos a Texto en Photoshop y replicarlo en Illustrator
Buenas tardes:
Mi problema es el siguiente:
Tengo un logo vectorizado al cuál he modificado su apariencia por medio de efectos en Photoshop (el efecto es similar a la X de MAC: bisel, sombra interior y paralela y trazo).
Lo que pretendo es conseguir este logo con los efectos de Photoshop pero vectorizado de nuevo para poder usarlo para cualquier formato o medio.
Las herramientas que he probado de Illustrator no me dan las mismas opciones que las de Photoshop y en Intenet tampoco he encontrado ada sobre aplicar efectos a texto en Illustrator.
He convertido en Photoshop el conjunto de efectos a Estilo pero no lo puedo importar en Illustrator.
¿Hay alguna forma de conseguir el mismo efecto en Illustrator que el que conseguí en Photoshop?
Gracias por adelantadome parece que ya te respondimos en el foro de PHOTOSHOP....
Besos
Luz® -
Copiar texto desde excel a illustrator (no respeta tabuladores excel)
Necesito hacer tablas en ilustrator copiando desde excel, no se porque en illustrator 5.5 si se puede, pero en los siguientes no.
Me pueden ayudar porfavor!!!!!!!!!!
graciasPor partes,
Horacio,
Quizás deberías haber abierto otro tema separado, aunque tienen algo en común.
Para llevar tablas de Excel a InDesign, guarda el archivo Excel y colocalo (o determinadas filas y columnas) en ID.
Automáticamente se crea una tabla. Tambien se puede copiar y pegar, directamente, bien sobre el escritorio o en un marco de texto ya creado.
Ahora bien, si lo que quieres es pegar valores de una tabla de Excel en otra tabla ya existente de ID, lo que tienes que hacer es pegar en otra parte sobre el documento ID, (se crean asi las separaciones entre las celdas) y a continuación seleccionar una celda de la tabla principal (no el texto de una celda) y pegar. Reemplaza los valores que hubiera previamente.
Nota, si haces un PDF desde Excel con PDFMaker, el icono que Acrobat instala en Excel, ese PDF lo puedes colocar en InDesign, para previsualizar en alta calidad, selecciona el gráfico colocado y escoge Mostrar rendimiento > Alta resolución. Debería leerse nítidamente.
Los gráficos asociados a las tablas de Excel no se incorporan al colocar en InDesign. Hay que seleccionarlos y pegarlos.
Normalmente prefiero hacerlo a través de Illustrator, "limpio" el archivo y luego lo coloco en InDesign como PDF.
Manuel.
Selecciona las celdas de Excel y copia. En Illustrator, con la herramienta de texto, pincha sobre la página y pega, aparecen los contenidos de las celdas de Excel separados por tabuladores (las Columnas) y por retornos (las filas sucesivas).
Puedes variar la posición de las marcas de tabulación y el interlineado.
Illustrator carece de función o herramienta de tablas, puedes usar lineas para dar sombra o situarlas como separación entre filas y columnas. Tienes una herramienta de Rejilla rectangular (bajo la herramienta de segmento) que te puede ayudar creadndo las líneas a la vez, si es que necesitas crear esas líneas.
Si quieres tener una especie de tabla o bloques de texto mas estructurados, "a lo Excel", también puedes probar a crear un marco de texto y usar las Opciones de Texto de Área del menú texto de Illustrator,usa tabuladores para hacer que el texto se desplace de una "celda" a la siguiente.
Saludos -
Docs con texto importado en Ai CS4 de FreeHand?
Cuando abro documentos de FreeHand en Illustrator CS4 algunas veces, algunas lineas
o palabras salen de la caja de texto. Me gustaría borrar toda la información de estilos,
donde esa opción, y dejarlo en texto plano, gracias.Luego para modificar los estilos de texto aplicados a varios bloques de texto, selecciona todos con la herram. de Selección o con Cmd/ctrl+A y aplica otro estilo de párrafo.
Si eliminas un estilo del panel, (pulsando sobre el icono Papelera del panel) el texto mantiene el formato o aspecto pero de forma local (como cuando se modifica manualmente).
Por cierto esta acción no se puede deshacer!
También indicas que hay texto que se sale de un marco de texto (?) seguro ques está dentro de un marco? En ese caso mira a ver si la fuente usada está instalada en tu sistema. -
Opciones de la herramienta de texto
Hola, en ocasiones realizo tarifas de precios, con con trazos diferentes, las cajas estan encima pero si no voy con cuidado las lineas o los objetos si les doy con la herramienta de texto se convierten en cajas de texto, es muy incomodo para trabajar, se puede desactivar esta opción, gracias.
Prueba a organizar o colocar los objetos diferentes al texto que "van situados por encima" en otra capa que puedes bloquear/ocultar en el Panel de Capas, o bloquea esos objetos individualmente en el Panel de Capas, (pulsando en las casillas en la segunda columna a la izquierda) o con el comando Objeto>Bloquear (Selección) o mejor aún con el atajo Cmd+2.
-
[FL8] Texto rotado
Hola foro.... aquí va la duda....
Desde actionscript creo un clip de película, dentro de
éste creo con
actionscript una caja de texto... esta caja la relleno con
datos extraídos
de un XML... hasta aquí todo me sale correcto, pero a
partir de aquí es la
duda.... también mediante actionscript hago rotar -5
grados el clip de
película y el texto deja de aparecer.
Una vez leí aquí en el foro que para que eso no
ocurriese había que hacer el
el texto fuese también un clip de película, pero no
logro encontrar ese
post, así que si alguien me sabría explicar como
solucionar este tema mil
gracias por adelantado.... o es que realmente no se puede
hacer que el texto
sea visible si se rota el clip de película?
Un saludo a todos.
::javier.Piaccere, signore.
Salu2
`8¬}
Juan Muro
"javiestufa" <[email protected]> escribió en el
mensaje
news:[email protected]...
> Para ser mas preciso, tuve que eliminar lo de crear las
cajas de texto con
> actionscript y crearlas directamente desde flash,
así en cada una de ellas
> hacer la importación.
> Gracias, Mr.Juan.
>
> "Juan Muro `8¬}" <[email protected]>
escribió en el mensaje
> news:[email protected]...
>> perdona javi: No es caracter/Todos los caracteres,
es incorporar/todos
>> los caracteres, o bien eliges el juego de caracteres
de tu fuente
>> correspondientes al idioma que quieras, que siempre
pesará menos. Dicha
>> propiedad está en la ventana de propiedades del
campo de texto dinámico.
>> Vaya, que de lo que se trata es de que incorpores
los contornos de la
>> fuente.
>> Salu2
>> `8¬}
>> Juan Muro
>> "javiestufa" <[email protected]>
escribió en el mensaje
>> news:[email protected]...
>>> ok juan! me acabo de perder y no tengo gps.
>>> te explico... en el archivo .fla tengo la fuente
como un elemento en la
>>> biblioteca si es a eso a lo que te refieres,
pero sigo sin ver la caja
>>> de texto al rotar....
>>> si no es eso.... es que no sé por
dónde encontrar lo de carácter/todos
>>> los carácteres, porque incluso en la fuente
en la biblioteca le doy a
>>> propiedades y selecciono para "texto mapa de
bits" y tampoco es eso....
>>> lo dicho... dónde encuentro eso que me
dices?... dónde lo compro?
>>>
>>> Gracias,
>>>
>>> ::javier.
>>>
>>>
>>> "Juan Muro `8¬}" <[email protected]>
escribió en el mensaje
>>> news:[email protected]...
>>>> Javi:
>>>> Tienes que incorporar los contornos de la
fuente que uses. Par ello
>>>> teniendo seleccionado el texto dinámico
le das a caracter/todos los
>>>> caracteres.
>>>> Tu peli pesará más.
>>>> Salu2
>>>> `8¬}
>>>> Juan Muro
>>>>
>>>> "CMacias" <[email protected]>
escribió en el mensaje
>>>> news:[email protected]...
>>>>> No sabría que contestarte, pero al
menos me consuela saber que no soy
>>>>> el único
>>>>> que trabaja en domingo 8¬(
>>>>>
>>>>>
>>>>> "javiestufa"
<[email protected]> escribió en el mensaje
>>>>>
news:[email protected]...
>>>>> Hola foro.... aquí va la duda....
>>>>> Desde actionscript creo un clip de
película, dentro de éste creo con
>>>>> actionscript una caja de texto... esta
caja la relleno con datos
>>>>> extraídos
>>>>> de un XML... hasta aquí todo me
sale correcto, pero a partir de aquí
>>>>> es la
>>>>> duda.... también mediante
actionscript hago rotar -5 grados el clip de
>>>>> película y el texto deja de
aparecer.
>>>>> Una vez leí aquí en el foro
que para que eso no ocurriese había que
>>>>> hacer el
>>>>> el texto fuese también un clip de
película, pero no logro encontrar
>>>>> ese
>>>>> post, así que si alguien me
sabría explicar como solucionar este tema
>>>>> mil
>>>>> gracias por adelantado.... o es que
realmente no se puede hacer que el
>>>>> texto
>>>>> sea visible si se rota el clip de
película?
>>>>>
>>>>> Un saludo a todos.
>>>>>
>>>>> ::javier.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
> -
Tengo problemas mandando mensajes de textos!!!!
Hola,quiero saber como puedo resolver el problema que tengo con mi cell,hace una semana que compre el Iphone 3G,y resulta que eh tenido problemas mandando y recibiendo mensajes de textos,algunas veces no le llegan a las personas que se los mando ,oh no me llegan los que me mandan...ademas no se porque en la parte de mandar mensajes de textos no esta la opcion de Reply y forward,tambien no tiene la opcion de mandarle mensajes a multiples destinatarios,y se me hace extraño que no las tenga,porque esas opciones las tienen telefonos muy antiguo y se me hace extraño que un telefono tan moderno no las tenga ....bueno gracias y espero respuesta
Hola Marlu,
Bienvenida a este forum! A respecto de tu problema, mandando y recibiendo mensajes de textos, deberás contactar tu operador, una vez que el problema puede ser de elles...
A respecto de las otras questiones, es verdad que no puedes "forward" pero, puedes responder a una mensage de texto. Solamente tienes de abrir la mensage e "reply" en la caja de texto.
Por ultimo, las mensajes de texto para varios destinos también poderá ser hecha. Deberás abrir una nueva mensajen y escribir en el topo lo numero de mobil a quien la quieres enviar, pero debes dejar uno espacio en cada uno de los numeros.
Sorry for my bad Spanish, though!
Cualquier duda más, me llama,
Francisco -
This is a multi-part message in MIME format.
------=_NextPart_000_0065_01C806B5.9B74CEF0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hola a todos,
Van 2 d=EDas q no entiendo que he hecho, pero no puedo
cambiar el =
tama=F1o de la caja de texto (sin cambiar el tama=F1o de la
fuente). =
Cada vez que me situo en una esquina de la caja arrastro toda
la caja, =
estoy convencido que antes si me colocaba en una esquina
aumentaba la =
maldita caja de texto.
Por favor indicarme como volver a mi illustrator que ten=EDa
antes....
Pleaaaaase
------=_NextPart_000_0065_01C806B5.9B74CEF0
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0
Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.6000.16525"
name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DVerdana size=3D1>Hola a
todos,</FONT></DIV>
<DIV><FONT face=3DVerdana
size=3D1></FONT> </DIV>
<DIV><FONT face=3DVerdana size=3D1>Van 2 d=EDas q
no entiendo que he =
hecho, pero no=20
puedo cambiar el tama=F1o de la caja de texto (sin cambiar el
tama=F1o =
de la=20
fuente). Cada vez que me situo en una esquina de la caja
arrastro toda =
la caja,=20
estoy convencido que antes si me colocaba en una esquina
aumentaba la =
maldita=20
caja de texto.</FONT></DIV>
<DIV><FONT face=3DVerdana
size=3D1></FONT> </DIV>
<DIV><FONT face=3DVerdana size=3D1>Por favor
indicarme como volver a mi =
illustrator=20
que ten=EDa antes....</FONT></DIV>
<DIV><FONT face=3DVerdana
size=3D1></FONT> </DIV>
<DIV><FONT face=3DVerdana
size=3D1>Pleaaaaase</FONT></DIV></BODY></HTML>
------=_NextPart_000_0065_01C806B5.9B74CEF0--This is a multi-part message in MIME format.
------=_NextPart_000_019A_01C80A58.5B9F3760
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Querido Francisco, no, no es eso, en cuanto hago un cuadro de
texto, =
escribo algo... y si le doy a la flecha "negra" me aparecen
las esquinas =
de la caja de texto negros y no blancos, como tendr=EDa que
ser....
Ya no entiendo nada, no se si mirar el tema de selecci=F3n o
bien el =
tema de las cajas de texto...
Gracias por to
"Fco. Moreno" <[email protected]> escribi=F3 en
el mensaje =
news:[email protected]...
Prueba a ver si has agrupado la caja de texto.
Seleccion=E1la y dale a =
desagrupar.
A ver si es eso.
Salu2
"Manolo" <[email protected]> escribi=F3 en el mensaje
=
news:[email protected]...
Hola a todos,
Van 2 d=EDas q no entiendo que he hecho, pero no puedo
cambiar el =
tama=F1o de la caja de texto (sin cambiar el tama=F1o de la
fuente). =
Cada vez que me situo en una esquina de la caja arrastro toda
la caja, =
estoy convencido que antes si me colocaba en una esquina
aumentaba la =
maldita caja de texto.
Por favor indicarme como volver a mi illustrator que ten=EDa
=
antes....
Pleaaaaase
------=_NextPart_000_019A_01C80A58.5B9F3760
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0
Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.6000.16525"
name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DVerdana size=3D1>Querido
Francisco, no, no es eso, en =
cuanto hago=20
un cuadro de texto, escribo algo... y si le doy a la flecha
"negra" me =
aparecen=20
las esquinas de la caja de texto negros y no blancos, como
tendr=EDa que =
ser....</FONT></DIV>
<DIV><FONT face=3DVerdana
size=3D1></FONT> </DIV>
<DIV><FONT face=3DVerdana size=3D1>Ya no entiendo
nada, no se si mirar =
el tema de=20
selecci=F3n o bien el tema de las cajas de
texto...</FONT></DIV>
<DIV><FONT face=3DVerdana
size=3D1></FONT> </DIV>
<DIV><FONT face=3DVerdana
size=3D1></FONT> </DIV>
<DIV><FONT face=3DVerdana size=3D1>Gracias por
to</FONT></DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT:
5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV>"Fco. Moreno" <<A=20
=
href=3D"mailto:[email protected]">[email protected]</A>>=
=20
escribi=F3 en el mensaje <A=20
=
href=3D"news:[email protected]">news:fecuak$co6$1@forums=
.macromedia.com</A>...</DIV>
<DIV><FONT face=3DArial size=3D2>Prueba a ver si
has agrupado la caja =
de texto.=20
Seleccion=E1la y dale a desagrupar.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>A ver si es
eso.</FONT></DIV>
<DIV><FONT face=3DArial
size=3D2>Salu2</FONT></DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT:
5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV>"Manolo" <<A=20
href=3D"mailto:[email protected]">[email protected]</A>>
=
escribi=F3 en el=20
mensaje <A=20
=
href=3D"news:[email protected]">news:fe34q3$kdu$1@forums=
.macromedia.com</A>...</DIV>
<DIV><FONT face=3DVerdana size=3D1>Hola a
todos,</FONT></DIV>
<DIV><FONT face=3DVerdana
size=3D1></FONT> </DIV>
<DIV><FONT face=3DVerdana size=3D1>Van 2 d=EDas
q no entiendo que he =
hecho, pero=20
no puedo cambiar el tama=F1o de la caja de texto (sin
cambiar el =
tama=F1o de la=20
fuente). Cada vez que me situo en una esquina de la caja
arrastro =
toda la=20
caja, estoy convencido que antes si me colocaba en una
esquina =
aumentaba la=20
maldita caja de texto.</FONT></DIV>
<DIV><FONT face=3DVerdana
size=3D1></FONT> </DIV>
<DIV><FONT face=3DVerdana size=3D1>Por favor
indicarme como volver a =
mi=20
illustrator que ten=EDa antes....</FONT></DIV>
<DIV><FONT face=3DVerdana
size=3D1></FONT> </DIV>
<DIV><FONT face=3DVerdana=20
size=3D1>Pleaaaaase</FONT></DIV></BLOCKQUOTE></BLOCKQUOTE></BODY></HTML>
------=_NextPart_000_019A_01C80A58.5B9F3760-- -
La herramienta de seleccion directa (flecha negra) no me esta funcionando para seleccion y agradra objetos. y cuando hago cajas de texto no me las deja ampliar que es los que le esta susendiendo a la herramienta
Fapena,
En Illustrator, en el menú: Ver escoge el comando:
Mostrar Cuadro Delimitador, (Show Bounding Box)
el atajo es Ctrl/Cmd+May+B,
que seguramente has utilizado sin darte cuenta.
Efectivamente cuando se oculta, ocurre lo que comentas.
Disculpa no haber reparado antes en este tema. -
Hi , i'm trying to run a simple Midlet with a list, but appear the following errors:
Error running executable C:\WTK22\bin\zayit
java.net.SocketException: No buffer space available (maximum connections reached?): JVM_Bind
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.<init>(ServerSocket.java:185)
at java.net.ServerSocket.<init>(ServerSocket.java:97)
at com.sun.kvem.Lime.runClient(Unknown Source)
at com.sun.kvem.KVMBridge.runKVM(Unknown Source)
at com.sun.kvem.KVMBridge.runKVM(Unknown Source)
at com.sun.kvem.midp.MIDP$4.run(Unknown Source)
the code of the Midlet is so simple and i don't know what happen.
i hope that you can help me
thanksthe code is:
package componentes;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
public class InterfazMid extends MIDlet implements CommandListener {
private Display display;
private List menu;
private List lista;
private TextBox cajaTexto;
private Form form;
private DateField campoFecha;
private Gauge indicador;
private TextField campoTexto;
private Ticker ticker;
private Alert aviso;
private Image imagen;
private Command atras;
private Command menuPrincipal;
private Command salir;
String menuActual = null;
public InterfazMid() {
form = new Form( "Formulario" );
indicador = new Gauge( "Indicador",false,50,20 );
campoTexto = new TextField( "Campo de texto","abc",40,0 );
ticker = new Ticker( "Componentes de la intefaz MIDP" );
aviso = new Alert( "Aviso Sonoro" );
imagen = Image.createImage( "/error.png" );
} catch( Exception e ) {}
atras = new Command( "Atr�s",Command.BACK,0 );
menuPrincipal = new Command( "Men� Ppal",Command.SCREEN,1 );
salir = new Command( "Salir",Command.STOP,2 );
protected void startApp() {
display = Display.getDisplay( this );
menu = new List( "Interfaz MIDP",Choice.IMPLICIT );
menu.append( "Caja de texto",null );
menu.append( "Fecha",null );
menu.append( "Lista",null );
menu.append( "Aviso",null );
menu.append( "Formulario",null );
menu.addCommand( salir );
menu.setCommandListener( this );
menu.setTicker( ticker );
mainMenu();
protected void pauseApp() {}
protected void destroyApp( boolean flag ) {}
public void mainMenu() {
menuActual = "Men� Ppal";
display.setCurrent( menu );
public void testTextBox() {
cajaTexto = new TextBox( "Teclea algo:","",10,TextField.ANY );
cajaTexto.setTicker( new Ticker("Probando TextBox") );
cajaTexto.addCommand( atras );
cajaTexto.setCommandListener( this );
cajaTexto.setString( "ABC" );
display.setCurrent( cajaTexto );
menuActual = "texto";
public void testList() {
lista = new List( "Seleciona:",Choice.MULTIPLE );
lista.setTicker( new Ticker("Probando List") );
lista.addCommand( atras );
lista.setCommandListener( this );
lista.append( "Opci�n 1",null );
lista.append( "Opci�n 2",null );
lista.append( "Opci�n 3",null );
lista.append( "Opci�n 4",null );
display.setCurrent(lista);
menuActual = "lista";
public void testAlert() {
aviso.setType( AlertType.ERROR );
aviso.setImage( imagen );
aviso.setString( " ** ERROR **" );
display.setCurrent( aviso );
public void testDate() {
java.util.Date fecha = new java.util.Date();
campoFecha = new DateField( "Hoy es: ",DateField.DATE );
campoFecha.setDate( fecha );
Form f = new Form( "Fecha" );
f.append( campoFecha );
f.addCommand( atras );
f.setCommandListener( this );
display.setCurrent( f );
menuActual = "fecha";
public void testForm() {
form.append( campoTexto );
form.append( indicador );
form.addCommand( atras );
form.setCommandListener( this );
display.setCurrent( form );
menuActual = "form";
public void commandAction( Command c,Displayable d ) {
String label = c.getLabel();
if( label.equals("Salir") ) {
destroyApp( true );
notifyDestroyed();
else if (label.equals("Atr�s")) {
if( menuActual.equals( "lista" ) ||
menuActual.equals( "texto" ) ||
menuActual.equals( "fecha" ) ||
menuActual.equals( "form" ) ) {
mainMenu();
else {
List l = (List)display.getCurrent();
switch( l.getSelectedIndex() ) {
case 0:
testTextBox();
break;
case 1:
testDate();
break;
case 2:
testList();
break;
case 3:
testAlert();
break;
case 4:
testForm();
break;
the code is so simple. i think that the problem is on the j2me wirless toolkit but i don't know.
thank you
bye -
Non-static method destroyApp(boolean) cannot be referenced from a static co
Hi guys, ive been writing, erasing and rewriting code, and finally my midlet runs well. It get complicated when i began to use the class Canvas, because the main process required values from the Canvas class. Im not sure if the program is well designed. Sugestions are apreciated.
Well, i used static public boolean hilo; to share that variable between classes, and its working, however there is just a final procedure I want to implement, and that is that terminate the midlet when the user press the erase button.
When I detect the button, i cant call the notifyDestroyed() method.
Here's the code
import java.io.*;
import javax.microedition.io.*;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
public class TS_Online extends MIDlet implements CommandListener {
public static Display display; // Objeto para que muestre en pantalla
private SSCanvas sscInicio; // Objeto canvas para mostrar imagenes
private Form frmServidor; // Objeto forma
private TextField ip1; // Direcci�n IP
private TextField ip2; // Direcci�n IP
private TextField ip3; // Direcci�n IP
private TextField ip4; // Direcci�n IP
private TextField puerto; // Puerto a conectarse
private Command cmdEntrada; // Objeto comando
private Command cmdSalida; // Objeto comando
private Command cmdVolver; // Objeto comando
// * Constructor *
public TS_Online() {
display = Display.getDisplay(this); // Obtiene la pantalla
sscInicio = new SSCanvas(); // Nueva forma
cmdEntrada = new Command("Entrada", Command.STOP, 2);
cmdSalida = new Command("Salida", Command.STOP, 2);
cmdVolver = new Command("Volver", Command.BACK, 1);
sscInicio.addCommand(cmdEntrada); // Coloca el comando Entrada
sscInicio.addCommand(cmdSalida); // Coloca el comando Salida
sscInicio.setCommandListener(this); // Define la forma que escucha comandos
ip1 = new TextField("Direcci�n IP:", "0", 3, TextField.NUMERIC); // Caja de texto
ip2 = new TextField(null, "0", 3, TextField.NUMERIC);
ip3 = new TextField(null, "0", 3, TextField.NUMERIC);
ip4 = new TextField(null, "0", 3, TextField.NUMERIC);
puerto = new TextField("Puerto:", "24300", 5, TextField.NUMERIC);
frmServidor = new Form("Configuraci�n"); // Titulo de la forma
frmServidor.append(ip1);
frmServidor.append(ip2);
frmServidor.append(ip3);
frmServidor.append(ip4);
frmServidor.append(puerto);
frmServidor.addCommand(cmdVolver); // Coloca el comando Salida
// * Metodos *
public void startApp() {
sscInicio.hilo = true; // Habilita el hilo
new Thread(sscInicio).start(); // Hilo en Canvas
display.setCurrent(sscInicio); // Define objeto a mostrar
sscInicio.setTitle("TicketShop S.A."); // Titulo de la forma
// Metodos comunes en todos los Midlet
public void pauseApp() {
System.out.println("*** Pausado ***");
sscInicio.hilo = false; // Detiene el hilo
public void destroyApp(boolean unconditional) {
sscInicio.hilo = false;
System.out.println("*** Terminado ***");
notifyDestroyed();
public void commandAction(Command c, Displayable s) {
if (c == cmdEntrada) {
if (sscInicio.img == sscInicio.ts) { // Configurar servidor
sscInicio.hilo = false;
sscInicio.ip = true;
System.out.println(sscInicio.hilo);
frmServidor.setCommandListener(this);
display.setCurrent(frmServidor);
} else {
sscInicio.valido(); // Tiquete valido
} else if (c == cmdSalida) {
sscInicio.invalido(); // Tiquete invalido
} else if (c == cmdVolver) { // Volver a la pantalla anterior
sscInicio.setCommandListener(this);
sscInicio.hilo = true; // Arranca el hilo
new Thread(sscInicio).start(); // Hilo en Canvas
display.setCurrent(sscInicio);
System.out.println(sscInicio.hilo);
// * Clase graficadora *
class SSCanvas extends Canvas implements Runnable {
private int sleepTime; // Tiempo de retrazo
static public boolean ip; // Configurar IP
static public boolean hilo; // Continuar hilo
static public Image ts = null; // Contenedor imagen
static public Image rojo = null; // Contenedor imagenpri
static public Image verde = null; // Contenedor imagen
static public Image img = null; // Contenedor imagen
static public String mensaje = null; // Cadena de salida
//private CommConnection cc = null; // Conector para puerto
private SocketConnection sc = null; // Conector para red
private SocketConnection cc = null; // Conector para red
public SSCanvas() {
// Cargamos las im�genes a usar
try {
ts = Image.createImage("/TicketShop.PNG"); // Procedimiento para cargar las imagenes
rojo = Image.createImage("/Rojo.PNG"); // Procedimiento para cargar las imagenes
verde = Image.createImage("/Verde.PNG"); // Procedimiento para cargar las imagenes
} catch (IOException e) {} // Error si no encuentra las imagenes
void iniciar() {
img = ts; // Imagen de bienvenida
mensaje = "Conectando al servidor"; // Mensaje de inicio
// Tiempo de espera para configurar servidor
for (sleepTime = 1;sleepTime <= 3; sleepTime++) {
try {
mensaje = mensaje + "."; // Mensaje de inicio
repaint(); // Redibuja la pantalla
serviceRepaints(); // Espera que termine
Thread.sleep(1000);
} catch (InterruptedException e) {
System.out.println(e.toString());
sleepTime = 50;
img = verde;
System.out.println("Iniciar");
void codigo() {
void valido() {
img = verde; // Imagen OK
mensaje = "Tiquete OK"; // Tiquete valido
AlertType.CONFIRMATION.playSound(TS_Online.display); // Sonido
void invalido() {
img = rojo; // Imagen OK
mensaje = "Tiquete Inv�lido"; // Tiquete valido
AlertType.ERROR.playSound(TS_Online.display); // Sonido
// thread que contiene el game loop
public void run() {
System.out.println("*** Hilo arrancado ***");
if (img == null)
iniciar();
while (hilo) {
System.out.println("Hilo");
// Actualizar pantalla
repaint(); // Redibuja la pantalla
serviceRepaints(); // Espera que termine
try {
Thread.sleep(sleepTime);
} catch (InterruptedException e) {
System.out.println(e.toString());
public void keyPressed(int keyCode) {
if (keyCode == -8) { // Si presiona borrar
hilo = false; // Salir de la aplicacion
System.out.println("*** Terminado ***");
TS_Online.destroyApp(true);
notifyDestroyed();
public void paint(Graphics g) {
// Borrar la pantalla
g.setColor(255,255,255);
g.fillRect (0, 0, getWidth(), getHeight());
// Coloca la imagen correspondiente
g.drawImage (img, getWidth()/2, 10, Graphics.HCENTER|Graphics.TOP);
// Poner texto
Font fuente = Font.getFont (Font.FACE_PROPORTIONAL, Font.STYLE_BOLD, Font.SIZE_MEDIUM);
g.setFont(fuente);
g.setColor(0,0,0);
g.drawString(mensaje, getWidth()/2, getHeight() - 40,Graphics.TOP|Graphics.HCENTER);
}Im using the boolean hilo to stop the thread. I seems to work fine for me. By the way, im using 4 textFields to get the IP address, however they appear one over the other, id like to see them one next to the other, or a better way to validate an IP address.
Thanks for the help!!Well, the solution was really easy, i just needed to create a reference to the midlet inside the Canvas class public SSCanvas(MIDlet m), so i got this new code, however, it seems cool in the emulator but i still cant get two comands in a row in the phone.
import java.io.*;
import javax.microedition.io.*;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import javax.microedition.rms.*;
public class TS_Online extends MIDlet implements CommandListener {
public static Display display; // Objeto para que muestre en pantalla
private SSCanvas sscInicio = null; // Objeto canvas para mostrar imagenes
private Form frmServidor; // Objeto forma
private StringItem subtitulo; // Subtitulo de la forma
private TextField[] ip; // Direcci�n IP
private TextField puerto; // Puerto a conectarse
private Command cmdEntrada; // Objeto comando
private Command cmdSalida; // Objeto comando
private Command cmdVolver; // Objeto comando
private String direccion; // Direcci�n del socket
private RecordStore rsDireccion = null; // Almacenamiento RMS
// * Constructor *
public TS_Online() {
display = Display.getDisplay(this); // Obtiene la pantalla
sscInicio = new SSCanvas(this); // Nueva forma con ref este midlet
cmdEntrada = new Command("Entrada", Command.STOP, 2);
cmdSalida = new Command("Salida", Command.STOP, 2);
cmdVolver = new Command("Volver", Command.BACK, 1);
sscInicio.addCommand(cmdEntrada); // Coloca el comando Entrada
sscInicio.addCommand(cmdSalida); // Coloca el comando Salida
sscInicio.setTitle("TicketShop S.A."); // Titulo del canvas
// Constructor forma Configurar Servidor
ip = new TextField[4]; //
ip[0] = new TextField(null, "190", 3, TextField.NUMERIC); // Caja de texto
ip[1] = new TextField(null, "65", 3, TextField.NUMERIC);
ip[2] = new TextField(null, "161", 3, TextField.NUMERIC);
ip[3] = new TextField(null, "158", 3, TextField.NUMERIC);
puerto = new TextField("Puerto:", "24300", 5, TextField.NUMERIC);
ip[0].setLayout(Item.LAYOUT_2); // Coloca los elementos pegados
ip[1].setLayout(Item.LAYOUT_2);
ip[2].setLayout(Item.LAYOUT_2);
ip[3].setLayout(Item.LAYOUT_2);
frmServidor = new Form("Configuraci�n"); // Titulo de la forma
subtitulo = new StringItem("Direccion IP:", "");
frmServidor.append(subtitulo); // Coloca cadena de texto
frmServidor.append(ip[0]);
frmServidor.append(ip[1]);
frmServidor.append(ip[2]);
frmServidor.append(ip[3]);
frmServidor.append("\n ");
frmServidor.append(puerto);
frmServidor.addCommand(cmdVolver); // Coloca el comando Salida
// * Metodos *
public void startApp() {
sscInicio.hilo = true; // Habilita el hilo
new Thread(sscInicio).start(); // Hilo en Canvas
sscInicio.setCommandListener(this); // Define la forma que escucha comandos
display.setCurrent(sscInicio); // Define objeto a mostrar
// Metodos comunes en todos los Midlet
public void pauseApp() {
System.out.println("*** Pausado ***");
sscInicio.hilo = false; // Detiene el hilo
public void destroyApp(boolean unconditional) {
public void salir() {
sscInicio.hilo = false;
System.out.println("*** Terminado ***");
destroyApp(false); // Destruir objetos
notifyDestroyed(); // Salir de la aplicacion
String cargarIP() {
String cadena;
// Cargar la direccion del servidor
try {
rsDireccion = RecordStore.openRecordStore("ipRecordStore", true ); // Crear si no existe
} catch (Exception error) {}
try {
byte[] byteOutputData = rsDireccion.getRecord(1); // Lee el primer registro
cadena = new String(byteOutputData);
System.out.println("Cargada: " + cadena);
} catch (Exception error) {
cadena = "190.65.161.158:24300";
try {
rsDireccion.closeRecordStore(); // Cerrar
} catch (Exception error) {}
return cadena;
void guardarIP (String cadena) {
// Almacenar la direcci�n ip y puerto
try {
RecordStore.deleteRecordStore("ipRecordStore"); // Borrar si existe
} catch (Exception error) {}
try {
rsDireccion = RecordStore.openRecordStore("ipRecordStore", true ); // Crear si no existe
} catch (Exception error) {}
try {
byte[] byteOutputData = cadena.getBytes(); // Almacena los datos
rsDireccion.addRecord(byteOutputData, 0, byteOutputData.length);
System.out.println("Guardada: " + cargarIP()); // rsDireccion.getNumRecords()
} catch (Exception error) {}
try {
rsDireccion.closeRecordStore(); // Cerrar
} catch (Exception error) {}
void mostrarIP(String cadena) {
int i, j=0, k;
for (k=0; k<=2; k++) {
i = cadena.indexOf('.', j); // Posicion del punto
if (i < 0) {
ip[k].setString("0"); // Si hay error coloca 0
} else {
ip[k].setString(cadena.substring(j, i)); // Extrae direccion
j = i + 1;
i = cadena.indexOf(':', j); // Posicion del punto
ip[3].setString(cadena.substring(j, i)); // Extrae direccion
i = cadena.lastIndexOf(':'); // Posicion dos puntos
puerto.setString(cadena.substring(i+1)); // Extrae puerto
public void commandAction(Command c, Displayable s) {
if (c == cmdEntrada) {
if (sscInicio.img == sscInicio.ts) { // Configurar servidor
sscInicio.hilo = false;
direccion = cargarIP (); // Cargar del record
mostrarIP(direccion); // Mostrar en la forma
System.out.println("*** OK ***");
frmServidor.setCommandListener(this);
display.setCurrent(frmServidor);
} else {
sscInicio.entrada = true; // Tiquete entrada
AlertType.ERROR.playSound(TS_Online.display); // Sonido
} else if (c == cmdSalida) {
sscInicio.entrada = false; // Tiquete salida
AlertType.ERROR.playSound(TS_Online.display); // Sonido
} else if (c == cmdVolver) { // Volver a la pantalla anterior
direccion = ip[0].getString() + "." + ip[1].getString() + "."
+ ip[2].getString() + "." + ip[3].getString() + ":" + puerto.getString();
guardarIP(direccion); //Almacenar en record
sscInicio.setCommandListener(this);
sscInicio.hilo = true; // Arranca el hilo
new Thread(sscInicio).start(); // Hilo en Canvas
display.setCurrent(sscInicio);
System.out.println(sscInicio.hilo);
// * Clase graficadora *
class SSCanvas extends Canvas implements Runnable {
private int sleepTime; // Tiempo de retrazo
static public boolean entrada = true; // Tiquete de entrada
static public boolean hilo; // Continuar hilo
static public Image ts = null; // Contenedor imagen
static public Image rojo = null; // Contenedor imagenpri
static public Image verde = null; // Contenedor imagen
static public Image img = null; // Contenedor imagen
static public String mensaje = null; // Cadena de salida
static public String mensaje2 = ""; // Cadena de salida Codigo de barras
MIDlet midlet; // Enlace al midlet inicial
CommConnection cc = null; // Conector para puerto
//SocketConnection sc = null; // Conector para red
//SocketConnection cc = null; // Conector para red
public SSCanvas(MIDlet m) {
midlet = m; // Referencia al MIDlet iniciado
// Cargamos las im�genes a usar
try {
ts = Image.createImage("/TicketShop.PNG"); // Procedimiento para cargar las imagenes
rojo = Image.createImage("/Rojo.PNG"); // Procedimiento para cargar las imagenes
verde = Image.createImage("/Verde.PNG"); // Procedimiento para cargar las imagenes
} catch (IOException e) {} // Error si no encuentra las imagenes
img = ts; // Imagen de bienvenida
mensaje = "Conectando";
mensaje2 = ""; // Mensaje de inicio
void iniciar() {
img = ts; // Imagen de bienvenida
// Tiempo de espera para configurar servidor
for (sleepTime = 1;sleepTime <= 3; sleepTime++) {
try {
mensaje = mensaje + "."; // Mensaje de inicio
repaint(); // Redibuja la pantalla
serviceRepaints(); // Espera que termine
Thread.sleep(1000);
} catch (InterruptedException e) {
System.out.println(e.toString());
mensaje = "Conectado!";
img = verde;
repaint(); // Redibuja la pantalla
serviceRepaints(); // Espera que termine
sleepTime = 50;
System.out.println("Iniciar");
void codigo() {
try {
System.out.println("Leyendo");
CommConnection cc = (CommConnection)Connector.open("comm:com0;baudrate=9600");
//cc = (SocketConnection)Connector.open("socket://127.0.0.1:24300");
//int baudrate = cc.getBaudRate();
InputStream ic = cc.openInputStream(); // Entrada serial
//OutputStream oc = cc.openOutputStream();
StringBuffer sbCodigo = new StringBuffer(); // Cadena de diferentes tipos de datos
int ch = 255;
while(ch > 32) {
ch = ic.read();
//oc.write(ch);
if (ch > 32)
sbCodigo.append((char)ch);
mensaje2 = sbCodigo.toString(); // Codigo de barras
if (mensaje2.equals("2864634059CULIB")) {
valido();
} else {
invalido();
ic.close(); // Cierra las conexiones
//oc.close();
cc.close();
} catch (Exception e) {
Alert a = new Alert("Error!", e.toString(), rojo, AlertType.ERROR);
a.setTimeout(Alert.FOREVER); // Alerta hasta que oprima boton
TS_Online.display.setCurrent(a); // Despues de la alerta vuelve a Inicio
try {
Thread.sleep(5000);
} catch (Exception x) {}
void valido() {
img = verde; // Imagen OK
mensaje = "Tiquete OK"; // Tiquete valido
AlertType.CONFIRMATION.playSound(TS_Online.display); // Sonido
void invalido() {
img = rojo; // Imagen OK
mensaje = "Tiquete Inv�lido"; // Tiquete valido
AlertType.ERROR.playSound(TS_Online.display); // Sonido
// thread que contiene el game loop
public void run() {
System.out.println("*** Hilo arrancado ***");
if (img == ts)
iniciar();
while (hilo) {
//System.out.println("Hilo");
// Leer codigo de barras
codigo();
// validar codigo de barras
//validar();
// Actualizar pantalla
repaint(); // Redibuja la pantalla
serviceRepaints(); // Espera que termine
try {
Thread.sleep(sleepTime);
} catch (InterruptedException e) {
System.out.println(e.toString());
protected void keyPressed(int keyCode) {
mensaje = Integer.toString(keyCode);
//int action = getGameAction(keyCode);
if ((keyCode == -8) || (keyCode == 42)) { // Si presiona borrar o *
AlertType.ERROR.playSound(TS_Online.display); // Sonido
((TS_Online)midlet).salir();
} else if (keyCode == -51 || keyCode == -52 || keyCode == -53) {
AlertType.ERROR.playSound(TS_Online.display); // Sonido
public void paint(Graphics g) {
// Borrar la pantalla
g.setColor(255,255,255);
g.fillRect (0, 0, getWidth(), getHeight());
// Coloca la imagen correspondiente
g.drawImage (img, getWidth()/2, 20, Graphics.HCENTER|Graphics.TOP);
// Poner texto
Font fuente = Font.getFont (Font.FACE_PROPORTIONAL, Font.STYLE_BOLD, Font.SIZE_MEDIUM);
g.setFont(fuente);
g.setColor(0,0,0);
g.drawString(mensaje, getWidth()/2, getHeight()/2,Graphics.TOP|Graphics.HCENTER);
g.drawString(mensaje2, getWidth()/2, 5,Graphics.TOP|Graphics.HCENTER);
}
Maybe you are looking for
-
NTUSER.DAT in every TS profile locked by system process
I have a 32 bit 2008 Enterprise server (not R2) running terminal services that is continually generating profile errors. Users are receiving "Your user profile was not loaded correctly! You have been logged on with a temporary profile...". This is
-
Payment block non editable on the basis of company code level
Dear Gurus, we had made payment block "A" non editable in payment praposal through transaction code ob27.as per reqeust from our partent company in India but our subsidiary in France wants the payment block "a" to be editable (to be insert payment b
-
Webcam Live and Yahoo messanger
How do i get this to work. Creative said it has to do with yahoo and i emailed yahoo and never got a response. I am pretty sure i installed it properly, or at least that's what my comp said when it finished installing. Can you guys help me out, thank
-
Old iPhone sync at odds with other cloud devices?
Hello My wife's "old" iphone 3g has iOS 4 that does not support iCloud, and I guess Apple won't update the iOS for that model anymore? All my other relevant devices and my main computer have been moved to iCloud and so my contacts etc are in the clou
-
Why constant pool with 0 entries?
I'm writing a tool that parses SWF files. Recently I see some SWF file that has constant pool of 0 entries, yet a lot of bytes followed. The spec does not describe what this means. For example, using swfdump there is something like: [00c] 141 DOACTIO