Páginas (2): 1 2   
FranChesstein   31-08-2022, 09:45
#1
Buenas un saludo a la comunidad gambas

Este es mi primer post en este foro, así que me voy a presentar brevemente, soy aficionado a la programación en general, y al basic en particular Big Grin.

No habia programado nunca en gambas, tampoco en Visual Basic, soy de la vieja escuela del C, y estoy haciendo un pequeño programa (y primero) en gambas3, basicamente para aprender a conocer este lenguaje, y estoy teniendo dificultades en gestionar el control "tapstrip", concretamente me he quedado atascado (no encuentro información en internet) en pasar de una pestaña a otra desde código sin intervención del usuario. Me explico, en una pestaña, por ejemplo, realizo una serie de operaciones, y que una vez terminadas le doy a un control tipo "button" para me salte a otro control tipo "textarea" donde mostrar información y que está en otra pestaña, sin que el usuario tenga que picar manualmente en las pestañas del control.

he probado con textarea.show(), textarea.setfocus(), etc, tambien he intentado ver si el control  tabstrit tiene algún tipo de indice que te pueda redirigir a otras pestañas, pero nada de nada. Solo veo que existe la propiedad "current", y otra para fijar el número de pestañas, pero no existe ningún método que te permita redirigirte a otra pestaña.

Espero haberme explicado, y gracias de antemano
Última modificación: 31-08-2022, 12:00 por FranChesstein.
Shell   31-08-2022, 10:30
#2
Bienvenido FranChesstein.

El control no se llamará TextArea, como mínimo se llamará TextArea1, el siguiente TextArea2, etc.

Con TextArea1.setfocus() se centrará en el control. Las pestañas del TabStrip tienen indice.
Te subo un ejemplo con TabStrip.

Saludos
Archivos adjuntos
.gz
TabstripEjemplo-0.0.1.tar.gz (Tamaño: 12.19 KB Descargas: 4)

"El conocimiento es la mejor inversión que se puede hacer" - Abraham Lincoln
FranChesstein   31-08-2022, 10:53
#3
Gracias por responder,

Efectivamente, el textarea tiene otro nombre, de hecho tiene el nombre de" texto", más bien hablaba de forma generica.

Le he echado un vistazo al ejemplo que has subido pero no se ajusta a lo que me gustaría hacer, por internet he encontrado ejemplos simiares que crea y borran pestañas, pero lo que me gustaría hacer es poder navegar entre las distintas pestañas (que fueron creadas en modo diseño) desde el código. Ya tengo una pestaña para introducir datos y otra pestaña para ofrecer resultados, lo que no soy capaz de hacer es que una vez rellenados los datos y validados se nos muestre la pestaña con los resultados.
Shell   31-08-2022, 11:27
#4
(31-08-2022, 10:53)FranChesstein escribió: Ya tengo una pestaña para introducir datos y otra pestaña para ofrecer resultados, lo que no soy capaz de hacer es que una vez rellenados los datos y validados se nos muestre la pestaña con los resultados.

¿ Quieres conmutar entre las dos pestañas con un botón ?.

Código:
Public Sub Button1_Click()

  'Conmuta entre dos pestañas
 
  If indice = 0 Then
    indice = 1
  Else
    indice = 0
  Endif
  TabStrip1.Index = indice
 
End

Saludos

"El conocimiento es la mejor inversión que se puede hacer" - Abraham Lincoln
Shordi   31-08-2022, 11:28
#5
Bienvenido al Foro, es bueno crecer Big Grin Big Grin

No uso mucho TabStrip pero, por similitud con otro controles, creo que con establecer el índice ([code] )al número que deseas (empezando por cero) se activa la pestaña deseada.

Saludos
Última modificación: 31-08-2022, 11:30 por Shordi.

No podemos regresar
FranChesstein   31-08-2022, 11:36
#6
Eso ya lo probé, y salta error "Bad index (FMain: 648)"

He probado muchas cosas y he llegado a pensar que no se puede, lo que no me parece lógico.

En Visual Basic si se podía hacer, tratando las pestañas como un array, al estilo de "tapstrip.item(4).show" o algo similiar, hablo un poco de memoria
Última modificación: 31-08-2022, 11:39 por FranChesstein.
Shell   31-08-2022, 11:42
#7
(31-08-2022, 11:28)Shordi escribió: No uso mucho TabStrip pero, por similitud con otro controles

 ¿ Y eso ?. ¿ Motivo ?.
 
(31-08-2022, 11:36)FranChesstein escribió: He probado muchas cosas y he llegado a pensar que no se puede, lo que no me parece lógico.

Te subo otro ejemplo. Smile

Puedes conmutar entre pestañas, no contienen nada.

Saludos
Archivos adjuntos
.gz
EjemploTabStrip2-0.0.1.tar.gz (Tamaño: 12.05 KB Descargas: 6)
Última modificación: 31-08-2022, 11:43 por Shell.

"El conocimiento es la mejor inversión que se puede hacer" - Abraham Lincoln
FranChesstein   31-08-2022, 11:57
#8
A la vista de este último ejemplo, acabo de ver en que me estaba equivocando, tengo cuatro pestañas y gambas las numera de 0 a 3 y no del 1 a 4, así que al indicar index=4 (en vez de index=3) para la última pestaña, saltaba el error.

Muchísimas gracias a los dos por las molestias, aunque estoy seguro de que me saldrán más dudas Smile
Shell   31-08-2022, 12:52
#9
(31-08-2022, 11:57)FranChesstein escribió: A la vista de este último ejemplo, acabo de ver en que me estaba equivocando, tengo cuatro pestañas y gambas las numera de 0 a 3 y no del 1 a 4,

Efectivamente, el primer indice en un array en Gambas comienza por cero. 

En Visual Basic se podía cambiar en algún menú del editor. Eso a la larga no sé como funcionaría en códigos que hagan
uso de indices concretos, se me ocurre que puede crear problemas. Si un programador le gusta que comenzarán por cero
y al otro por uno.

Saludos

"El conocimiento es la mejor inversión que se puede hacer" - Abraham Lincoln
Shordi   31-08-2022, 12:52
#10
(31-08-2022, 11:57)FranChesstein escribió: ....
tengo cuatro pestañas y gambas las numera de 0 a 3 y no del 1 a 4, así que al indicar index=4 (en vez de index=3) para la última pestaña, saltaba el error.
...

¡Te lo dije! Seguro que miras el código y no lees el texto (es algo que hago yo mucho y al final respondo a lo que NO se pregunta) Big Grin Big Grin

Saludos

Cita: ¿ Y eso ?. ¿ Motivo ?.
 

No me gusta la estética (prefiero tabPanel) y sobre todo casi siempre utilizo (utilizaba) las pestañas para contener datos de distintas tablas y cosas así, por lo que siempre preferí utilizar Workspace. El aspecto es el mismo, pero el concepto diferente.

Saludos.
Última modificación: 31-08-2022, 12:54 por Shordi.

No podemos regresar
Páginas (2): 1 2   
  
Usuarios navegando en este tema: 7 invitado(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.