|
Página 2 de 2
|
Autor |
Mensaje |
ljma
Programador
Registrado: Enero 2010
Mensajes: 106
Edad: 54 Ubicación:
|
Re: Duda Con ShowModal
Hola,
Efectivamente es un bug de la versión que usas (casi me vuelve loco ese bug). Actualiza y listo.
Saludos
|
#11 Domingo, 18 Septiembre 2011, 21:51 |
|
|
Marcelo
Aprendiz
Registrado: Septiembre 2011
Mensajes: 66
Edad: 50
|
Re: Duda Con ShowModal
Uh, muchísimas gracias!!! No sabes la buena noticia que me das!!!
No veo la hora de llegar y probar...
|
#12 Domingo, 18 Septiembre 2011, 22:51 |
|
|
Marcelo
Aprendiz
Registrado: Septiembre 2011
Mensajes: 66
Edad: 50
|
Re: Duda Con ShowModal
Lamentablemente no hubo caso. Luego de actualizar a la 2.23 el problema persiste.
Calculo que tendré que acostumbrarme a poner como disable a la ventana madre antes de llamar a la secundaria y restaurarla al volver, al menos hasta que encuentre la solución.
Otra que me queda es, o usar gb.qt y retocar ya que me queda diferente la estética y los tamaños de los elementos o probar de instalar gambas 3, ya que si esta por salir y estoy aprendiendo ¿porqué no hacerlo con la versión actual? Calculo que la base es la misma, ¿no?
De todas formas muchas gracias por la ayuda.
Marcelo
|
#13 Lunes, 19 Septiembre 2011, 18:00 |
|
|
jguardon
Administrador
Registrado: Septiembre 2009
Mensajes: 2708
Edad: 57 Ubicación: Granada
|
Re: Duda Con ShowModal
Espera, espera! Supongo que para instalar gambas 2.23 habrás desinstalado antes el viejo, Hay algunos problemas que surgen debido a la diferente ubicación de gambas de los repositorios y gambas compilado a mano.
gambas instalado de los repos se instala en /usr/bin, /usr/share y en /usr/lib, mientras que si compilas a mano se instala en /usr/local/bin, /usr/local/share y /usr/local/lib.
Tendrás que borrar cualquier resto de gambas 2 que haya quedado en los primeros, porque puede ser que te esté cogiendo aún librerías antiguas con el bug. Porque de hecho, nadie más tiene ese problema.
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"
|
#14 Lunes, 19 Septiembre 2011, 19:42 |
|
|
ahtonio
Programador
Registrado: Octobre 2009
Mensajes: 144
Edad: 58 Ubicación: Zaragoza
|
Re: Duda Con ShowModal
Hola, Marcelo.
Supongo que lo que pretendes es que aunque el usuario quiera abandonar la ventana, no pueda. Yo en GB3 (y he mirado en GB2 pero no lo he probado) pongo la propiedad Stacking = Above. Tiene 3 posibilidades: Normal, Above y Bellow.
Si está Above siempre está encima y no puedes envíar al fondo, ni responde a los eventos de cerrar, no obstante permite arrastrar la ventana, maximizar, minimizar, restaurar y el menú de control que sale de la esq. izquierda.
Creo que eso es bastante acercado a lo que necesitas.
Un saludo
|
#15 Martes, 20 Septiembre 2011, 12:19 |
|
|
shordi
Analista Programador
Registrado: Septiembre 2009
Mensajes: 4982
Edad: 64 Ubicación: Albacete
|
Re: Duda Con ShowModal
No tiene nada que ver con la versión de gambas. Ni es un bug. Tienes un error de concepto. Para poder mostar una instancia de Form1 primero debes crearla. Puedes hacer showmodal con una instancia pero no con una clase como es Form1.
Así el código debería ser:
|
#16 Martes, 20 Septiembre 2011, 12:54 |
|
|
Marcelo
Aprendiz
Registrado: Septiembre 2011
Mensajes: 66
Edad: 50
|
Re: Duda Con ShowModal
Bueno, esto va a volverme realmente loco!! jajaja
Tenía todo solucionado, instalé Gambas3 y lo vengo probando, realmente me gustan las diferencias que encuentro hasta ahora con el 2.
El tema de los ShowModal venía bien, los armara como los armara, de todas las formas que están en el post funcionaban bien pero de repente... zaz!!!
A ver si puedo explicarme, Tengo un PANEL con unos botones y un gridview.
AL evento Gridview_DblClick le asigno la apertura de FORM1 en forma modal, todo OK, se abre y no me deja operar el form anterior.
Si quiero que al apretar Button1 se abra un Form2 de la misma forma modal (copio y pego código) este se abre pero puedo hacer foco en la ventana madre y seleccionar sus opciones con resultados impredecibles.
Lo más loco, para mi, es que probé, para descartar errores del FORM2, directamente llamarlo desde el evento DblClick del Grid y funciona perfectamente!!!!
Se me quemaron los papeles!!!
O sea, so lo llamo desde GRIDVIEW_DBLCLICK anda bien y si lo llamo desde Button1_Click no...
Que puede estar pasando? Hay alguna razón por la cual los botones dentro de un Panel no puedan crear ventanas en forma modal? el Gridview también esta dentro del mismo panel.
Voy a ver si puedo ir eliminando código IMPORTANTE (lo que realmente hace lo que necesito) del programa para llegar a reducirlo a la mínima expresión y ver si lo puedo poner acá para que lo vean...
Gracias...
Marceo
|
#17 Miercoles, 21 Septiembre 2011, 20:38 |
|
|
Marcelo
Aprendiz
Registrado: Septiembre 2011
Mensajes: 66
Edad: 50
|
Re: Duda Con ShowModal
Bueno, a ver si pueden descubrir que estoy haciendo mal....
En algo seguro me equivoco ya que puedo reproducir el siguiente error:
Yo accedo al PANEL_Consultas mediante BTN_Consultas y ahí aparece el Gridview_ABM y los botones en cuestión.
Si yo hago doble click sobre el gridview, el form se abre modal correctamente y al volver al principal los dos botones andan bien (abren ventanas modales).
Pero si yo primero accedo a cualquiera de los dos botones, el form se abre permitiéndome cambiar de ventana (mal), si cierro el Form y lo vuelvo a abrir esto se corrige y todo lo que abra en adelante lo hace en forma modal... No se si se entiende.
Para mi en que estoy regresando a alguna parte del formulario principal a donde no debo o perdiéndome de ejecutar algo necesario y no me doy cuenta que es...
Desde ya muchas gracias y perdonen por tanta insistencia!!
Marcelo.
' gambas class file
Public Sub _new()
End
Private $hres As Result
Public Sub Form_Open()
btn_Principal.Enabled = False
Cabecera.Text = " Pantalla principal"
Panel_Principal.Show()
Panel_Consultas.Hide()
' Conecta conla base de datos
If ConectarBase() Then Return
' Fomatea la Gridview_ABM
With GridView_ABM
.header = 3
.columns.count = 5
.Columns[0].title = "Autor"
.Columns[1].title = "Título"
.Columns[2].title = "Proveedor"
.Columns[3].title = "Stock"
.Columns[4].title = ""
.Columns[0].width = 110
.Columns[1].width = 400
.Columns[2].width = 200
.Columns[3].width = 20
.Columns[4].width = 0
End With
GridView_ABM.Clear()
$hres = Conexion.Exec("select * from Datos order by Autor")
GridView_ABM.Rows.Count = $hres.Count
End
Public Sub Form_Close()
CerrarConexion()
End
' -------------------------
' Botón Pantalla Principal
' -------------------------
Public Sub btn_Principal_Click()
Cabecera.Text = " Pantalla principal"
Panel_Principal.Show()
Panel_Consultas.Hide()
btn_Principal.Enabled = False
btn_Consultas.Enabled = True
btn_2.Enabled = True
btn_3.Enabled = True
btn_4.Enabled = True
btn_5.Enabled = True
btn_6.Enabled = True
btn_7.Enabled = True
btn_Herramientas.Enabled = True
End
' ----------------------
' Botón A/B/M/Consultas
' ----------------------
Public Sub btn_Consultas_Click()
Cabecera.Text = " Altas / Bajas / Modificaciones / Consultas"
Panel_Principal.Hide()
Panel_Consultas.Show()
BusquedaRapida.Enabled = False
BtBox_CodBarra.Enabled = False
btn_Principal.Enabled = True
btn_Consultas.Enabled = False
btn_2.Enabled = True
btn_3.Enabled = True
btn_4.Enabled = True
btn_5.Enabled = True
btn_6.Enabled = True
btn_7.Enabled = True
btn_8.Enabled = True
End
' ------------------------------
' Conexión con la base de datos
' ------------------------------
Private Conexion As Connection
Private Function ConectarBase() As Boolean
If Conexion <> Null Then Return False
Conexion = New Connection
Conexion.Host = "/home/libreria/Gambas3/LF2012"
Conexion.Name = "LF"
Conexion.Type = "sqlite3"
Try Conexion.OPEN()
If Error Then
Conexion = Null
Message.Error("Error al conectar con la base de datos")
Return True
Endif
Return False
End
' ------------------------------
' ------------------------
' Cerrar la base de datos
' ------------------------'
Private Sub CerrarConexion()
If Conexion = Null Then Return
Conexion.Close()
Conexion = Null
End
' ------------------------
' --------------------------------------------------------
' Este es el manejador del evento Data de la Gridview_ABM
' --------------------------------------------------------
Public Sub GridView_ABM_Data(Row As Integer, Column As Integer)
$hres.MoveTo(Row)
' Relleno de la fila actual (suponemos que tenemos 5 columnas)
If Column <> 0 Then Return
GridView_ABM[Row, 0].text = $hres["Autor"]
GridView_ABM[Row, 1].text = $hres["Titulo"]
GridView_ABM[Row, 2].text = $hres["Proveedor"]
GridView_ABM[Row, 3].text = $hres["Stock"]
GridView_ABM[Row, 4].text = $hres["Identificador"]
End
' --------------------------------------------------------
Public Sub GridView_ABM_DblClick()
Dim Consulta As New Form_VerArticulo
Consulta.ShowModal()
End
Public Sub btn_Agregar_Click()
Dim miform As New Form1
miform.ShowModal()
End
Public Sub btn_Buscar_Click()
Dim F As New Form1
F.showmodal()
End
En ambos casos, tanto Form_VerArticulo como Form1 solo tienen el siguiente código dentro ya que probé con doy y siempre da lo mismo:
última edición por Marcelo el Miercoles, 21 Septiembre 2011, 22:23; editado 1 vez
|
#18 Miercoles, 21 Septiembre 2011, 22:20 |
|
|
Marcelo
Aprendiz
Registrado: Septiembre 2011
Mensajes: 66
Edad: 50
|
Re: Duda Con ShowModal
Bueno, he decidido dejar de sufrir y hacer directamente el proyecto con gb.qt, de esta manera las ventanas modales funcionan como tal...
No se si el problema será de gambas o de mi configuración pero usando gb.gui lo hacen como quieren y cuando quieren...
Gracias de todas maneras por la ayuda!!!
Marcelo
|
#19 Jueves, 22 Septiembre 2011, 23:25 |
|
|
|
Temas parecidos
Temas parecidos
|
Página 2 de 2
|
Usuarios navegando en este tema: 0 registrados, 0 ocultos y 0 invitados Usuarios registrados conectados: Ninguno
|
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
|
|
|
|
|