Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 3
Ir a la página 1, 2, 3  Siguiente
 
Problemas Con Textbox
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Problemas Con Textbox 
 
Hola.
Llevo programando con Visual Basic Studio desde hace tiempo.
El caso es que me he decidido a probar gambas y lo primero que estoy intentando hacer es portar una pequeña aplicación de VB a gambas.
Lo llevo más o menos bien, voy buscando las equivalencias y arreglando los problemas como van viniendo.
Pero no logro resolver el siguiente problema:
Tengo un textbox en el que el usuario tiene que introducir un número. Ese número es convertido a romano y devuelto en otro textbox.
El problema viene cuando intento utilizar ese textbox (N) como si fuera un número. Me da error, "Type mismatch".

IF N > 3999 THEN
Message("Escriba un número entre 1 y 3999")
N = ""
RETURN


En Visual Basic no había ningún problema en hacer esto, pero gambas dice que N es de tipo "TextBox" mientras que él busca un "Integer".
No sé muy bien como solucionar esto, si puedo indicar el tipo del textbox o algo por el estilo.
 



 
4octavio4 - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Textbox 
 
Probe el codigo que pusiste como ejemplo y me encontre con dos problemas :

1) el error que mencionabas, es porque te falto la propiedad ".text" en la compararcion
2) no vacia el textbox es porque te falto la propiedad ".text"

IF N.text > "3999" THEN
           Message("Escriba un número entre 1 y 3999")
          N.text = ""
         RETURN
 ENDIF

 

por otro lado , si solo vas a ingresar numeros podrias/deberias usar un valuebox
Codigo para el valuebox :

 
IF N.Text > "3999" THEN
 Message("Escriba un número entre 1 y 3999")
 N.Clear
 ENDIF
 RETURN



Edito :
por otro lado , si solo vas a ingresar numeros podrias/deberias usar un valuebox
Codigo para el valuebox :


IF N.value > 3999 THEN
 Message("Escriba un número entre 1 y 3999")


saludos
 



 
última edición por nrcefe el Domingo, 08 Noviembre 2009, 16:06; editado 1 vez 
nrcefe - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Textbox 
 
Gracias por la respuesta.
Sí, he estado mirándolo un poco más y al final he puesto un Valuebox (que yo sepa, no existía en VB6).
Por otra parte, no soy capaz de dar un valor a N.text, gambas me dice que "es de lo sólo lectura". Pero he descubierto N.Clear y N.Insert y con ellos me apaño por ahora.

También he tenido problemas para determinar si un número es decimal o no. He probado con Isfloat() pero nada. Al final he hecho un instr que busca "," y, aunque es menos elegante, funcionar funciona.
 
¿Sabrías de algún sitio donde hablen de las propiedades de los objetos? Es que son bastante distintas a VB en algunas cosas.
Y, por último, sería posible asociar a una base de datos un proyecto de gambas?
Gracias.

Edito:
Vaya, ahora me pasa algo bastante raro.
IF p = Len(R.text) THEN
N.clear
N.insert((m * 1000) + (c * 100) + (d * 10) + u)
ELSE
message("Este no es un número romano")
END IF

END

El valor que arroja lo que he puesto dentro de N.Insert es 10 cuando pongo X es el cuadro de número romano (correcto) pero me pone un cero de más en todo, da igual lo que haga. Según el código sale bien, pero luego en el formulario se ve un cero de más.
¿Alguna Solución?
 



 
última edición por 4octavio4 el Domingo, 08 Noviembre 2009, 13:42; editado 1 vez 
4octavio4 - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Textbox 
 
4octavio4 escribió: [Ver mensaje]
Gracias por la respuesta.
Sí, he estado mirándolo un poco más y al final he puesto un Valuebox (que yo sepa, no existía en VB6).
Por otra parte, no soy capaz de dar un valor a N.text, gambas me dice que "es de lo sólo lectura". Pero he descubierto N.Clear y N.Insert y con ellos me apaño por ahora.


Para asignar un valor a un ValueBox utiliza su propiedad .Value

4octavio4 escribió: 

También he tenido problemas para determinar si un número es decimal o no. He probado con Isfloat() pero nada. Al final he hecho un instr que busca "," y, aunque es menos elegante, funcionar funciona.


Eso depende del idioma o localización de tu sistema. El delimitador decimal puede ser un punto o una coma, pero creo que por defecto gambas usa el punto (no estoy seguro). Prueba con isFloat(122.6) por ejemplo. Tiene que devolver True. Normalmente lo que yo hago es reemplazar la (,) por el (.)
Pero ten presente el tema de las conversiones entre String y Float (cFloat, cStr, etc).

4octavio4 escribió: 

¿Sabrías de algún sitio donde hablen de las propiedades de los objetos? Es que son bastante distintas a VB en algunas cosas.


Lógicamente en la documentación de gambas. Hay varias formas:

  • En el editor de código, situando el cursor sobre una palabra clave y pulsando F2
  • Haciendo clic derecho sobre un componente gráfico (desde la paleta de componentes)
  • Pulsando F1 en cualquier momento, te llevará al índice de ayuda.
  • Visitando la página web oficial, el enlace Wiki Enciclopedia
  • Descarga y lee el libro de gambas desde esta web (sección descargas)


4octavio4 escribió: 

Y, por último, sería posible asociar a una base de datos un proyecto de gambas?
Gracias.


No entiendo bien lo que quieres. Si te refieres a usar bases de datos dentro de tus proyectos, entonces no hay ningún problema. Pero de nuevo, mi consejo es que busques y leas, aquí hay mucha información al respecto. El usuario soplo ha escrito varios posts al respecto y también encontrarás un capítulo entero con ejemplos en el libro anteriormente mencionado.

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Textbox 
 
Gracias, ya estoy leyendo ese libro.
Otra cosa: ¿Como puedo hacer que los datos se adapten a la longitud del textarea?
Me explico: Ahora, si pongo que E.Text (es el text area) es igual a lo que sea, me pone todo en una línea. Lo que yo quiero es que me haga los saltos de línea automáticamente en función del tamaño del Textarea. ¿Es posible?
 



 
4octavio4 - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Textbox 
 
No puedes introducir saltos de línea automáticamente, pero si puedes ajustar el texto al área visible del TextArea:

TextArea1.Wrap = TRUE
 

 




===================
Cómo programar con Gambas

Speed Books: informática libre.
 
fabianfv - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Textbox 
 
para hacer un salto de linea debes usar  insert y   "\n" . Ejemplo

Supongamos que tienes un valuebox cuyo nombre es n y quieres insertar en un textarea el valor que se ingresa en el valuebox cuando un usuario pulsa un boton; para ello haces lo siguiente


PUBLIC SUB Boton_Click()
       textarea.insert(n.value & "\n")
END

 



 
nrcefe - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Textbox 
 
Gracias a todos.  
Saliéndome un poco del tema, estoy haciendo un programita que te calcula las medias de diferentes asignaturas y la total. El caso es que he puesto una opción para importar y exportar la lista de notas. He leído (sobre todo en ese libro que me habéis recomendado antes) las formas de acceder a un archivo, escribir en él, etc.
El caso es que he tenido un par de fallos que no he podido resolver.
El primero es que no sé como añadir un salto de línea. El sistema de lectura de la importación se basa precisamente en leer las entradas de diferentes líneas. Por eso necesito, a la hora de escribir en el archivo, poner cada entrada en una línea.

WHILE lista.index + 1 <= lista.count AND lista.index > -1
elemento = lista.Current.Text
WRITE #archivo, elemento
lista.index = lista.index + 1
WEND


Bien, como podeís ver, me baso en un while que recorre todas las entradas de la lista y las escribe. El problema es que las escribe todas en la misma línea... ¿Alguna solución?
Edito: Esto lo he conseguido solucionar. He probado el "\n" que habéis dicho antes y perfecto.

El otro problema es con un carácter extraño que me copia siempre al principio de cada cadena que escribo en el archivo
Por ejemplo, si el valor que le doy para que escriba es
0/Valenciano me escribe 0/Valenciano. Sé que podría solucionarlo chapuceramente con un mid, pero me gustaría saber que hago mal y si se puede arreglar a las buenas.
 



 
última edición por 4octavio4 el Lunes, 09 Noviembre 2009, 22:43; editado 1 vez 
4octavio4 - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Textbox 
 
Copia y pega el código que te da problemas. Así a ciegas no tiene sentido aventurar qué te pasa.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Textbox 
 
PUBLIC SUB exportar_Click()
DIM patch AS String
DIM archivo AS File
DIM elemento AS String
Dialog.SaveFile
patch = Dialog.Path

archivo = OPEN patch FOR WRITE CREATE

lista.index = 0

WHILE lista.index + 1 <= lista.count AND lista.index > -1
elemento = lista.Current.Text
WRITE #archivo, elemento & "\n"
lista.index = lista.index + 1
WEND
archivo.close
END


Ahí está todo el código del botón exportar.
El problema que me da ya lo he explicado antes.

PD: Ahora me he dado cuenta de otra cosa. No puedo escribir 0,algo en un valuebox... Si escribo un 0 y luego una coma me borra el cero. Eso no ocurre si el número es otro...
 



 
4octavio4 - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Deshabilitar Textbox techm3 Controles/Librerías/Componentes 3 Jueves, 12 Agosto 2010, 16:10 Ver último mensaje
abarzuaf
No hay nuevos mensajes Un Textbox Circular? ivanovichenco Controles/Librerías/Componentes 14 Martes, 28 Diciembre 2010, 16:35 Ver último mensaje
Invitado
No hay nuevos mensajes Validación En Un Textbox Miguel1813 General 7 Jueves, 28 Julio 2011, 20:03 Ver último mensaje
RodSanRey
No hay nuevos mensajes Bucle Con Textbox Albertin79 General 4 Jueves, 25 Agosto 2011, 15:26 Ver último mensaje
Albertin79
 

Publicar nuevo tema  Responder al tema  Página 1 de 3
Ir a la página 1, 2, 3  Siguiente

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron