Jump to content

Como hago para que se cierre la GUI?


Recommended Posts

rootRes = getResourceRootElement(getThisResource()) 
function panelDeJugador (jugadorL) 
    local ventana = guiCreateWindow(1,1,0.9,0.9,"Test de ventanita",false) 
    local botonSalir = guiCreateButton(0.2,0.2,0.4,0.4,"cerrar",true,ventana) 
    guiWindowSetMovable (ventana, true) 
    showCursor(true) 
end 
function salidFuncion () 
    guiSetVisible(ventana,false) 
    showCursor(false) 
end 
addEventHandler("onClientGUIClick", salidFuncion, botonSalir) 
addEventHandler("onClientResourceStart", rootRes, panelDeJugador) 

El problema es que no recuerdo la "linea" para que el darle al boton cerrara la GUI.

y otra pregunta:

Como hago para que el boton este en la derecha en vez de la izquierda?

guip.JPG

Link to comment
Posted (edited) · Hidden
Hidden

Prueba con esto:

rootRes = getResourceRootElement(getThisResource()) 
function panelDeJugador (jugadorL) 
    ventana = guiCreateWindow(1,1,0.9,0.9,"Test de ventanita",false) 
    botonSalir = guiCreateButton(0,0.2,0.4,0.4,"cerrar",true,ventana) 
    addEventHandler("onClientGUIClick", botonSalir, salidFuncion) 
    guiWindowSetMovable (ventana, true) 
    showCursor(true) 
end 
  
function salidFuncion () 
    guiSetVisible(ventana,false) 
    showCursor(false) 
end 
addEventHandler("onClientResourceStart", rootRes, panelDeJugador) 

Edited by Guest
Link to comment

El problema se debe a que :

1. Estás usando variables locales dentro de una función, por ende no podrás ejecutarlas en otra función, ¿eso era lo que pasaba cierto?. Puedes quitar el 'local' de las variables o simplemente quitar la función.

Recomendación: En client-side para las GUI-s no es necesario usar 'onClientResourceStart' ya que dejandola fuera de la función [que te servirá para el problema de arriba] se auto-ejecutará cuando el jugador 'startee' el resource de la GUI.

3. Tienes mal el evento: 'onClientGUIClick' checa los argumentos.

  
ventana = guiCreateWindow(1,1,0.9,0.9,"Test de ventanita",false) 
botonSalir = guiCreateButton(0.2,0.2,0.4,0.4,"cerrar",true,ventana) 
showCursor(true) 
  
function salidFuncion () 
    guiSetVisible(ventana,false) 
    showCursor(false) 
end 
addEventHandler("onClientGUIClick", botonSalir, salidFuncion) 

Link to comment
Hidden
El problema se debe a que :

1. Estás usando variables locales dentro de una función, por ende no podrás ejecutarlas en otra función, ¿eso era lo que pasaba cierto?. Puedes quitar el 'local' de las variables o simplemente quitar la función.

Recomendación: En client-side para las GUI-s no es necesario usar 'onClientResourceStart' ya que dejandola fuera de la función [que te servirá para el problema de arriba] se auto-ejecutará cuando el jugador 'startee' el resource de la GUI.

3. Tienes mal el evento: 'onClientGUIClick' checa los argumentos.

  
ventana = guiCreateWindow(1,1,0.9,0.9,"Test de ventanita",false) 
botonSalir = guiCreateButton(0.2,0.2,0.4,0.4,"cerrar",true,ventana) 
showCursor(true) 
  
function salidFuncion () 
    guiSetVisible(ventana,false) 
    showCursor(false) 
end 
addEventHandler("onClientGUIClick", botonSalir, salidFuncion) 

Despues del 1 viene el 2. Y no le respondiste su segunda pregunta. En el primero quizas tenia un error en los argumentos y definicion de variables, y el segundo segundo era solo cambiar una variable.

Link to comment
El problema se debe a que :

1. Estás usando variables locales dentro de una función, por ende no podrás ejecutarlas en otra función, ¿eso era lo que pasaba cierto?. Puedes quitar el 'local' de las variables o simplemente quitar la función.

Recomendación: En client-side para las GUI-s no es necesario usar 'onClientResourceStart' ya que dejandola fuera de la función [que te servirá para el problema de arriba] se auto-ejecutará cuando el jugador 'startee' el resource de la GUI.

3. Tienes mal el evento: 'onClientGUIClick' checa los argumentos.

  
ventana = guiCreateWindow(1,1,0.9,0.9,"Test de ventanita",false) 
botonSalir = guiCreateButton(0.2,0.2,0.4,0.4,"cerrar",true,ventana) 
showCursor(true) 
  
function salidFuncion () 
    guiSetVisible(ventana,false) 
    showCursor(false) 
end 
addEventHandler("onClientGUIClick", botonSalir, salidFuncion) 

ejem... solo e preguntado por la linea de como cerrarla y como poner el boton a la izquierda no de "problemas con el script", de todas maneras, lo que buscaba era esto:

addEventHandler("onClientGUIClick", botonSalir, salidFuncion) 

gracias a #BC por responder a lo que he preguntado

El problema es que ahora, al clickar en cualquier parte de la ventana, se cierra.

rootRes = getResourceRootElement(getThisResource()) 
function panelDeJugador (jugadorL) 
    ventana = guiCreateWindow(100,100,600,350,"Test de ventanita",false) 
    botonSalir = guiCreateButton(0.01,0.9,0.30,0.1,"cerrar",true,ventana) 
    addEventHandler("onClientGUIClick", botonSalir, salidFuncion) 
    guiWindowSetMovable (ventana, true) 
    showCursor(true) 
end 
function salidFuncion () 
    guiSetVisible(ventana,false) 
    showCursor(false) 
end 
addCommandHandler("panel",panelDeJugador) 

PD: ya arregle el problema de el boton a la izquierda:

guiCreateButton(0.01,0.9,0.30,0.1... 

Edited by Guest
Link to comment
Hidden
rootRes = getResourceRootElement(getThisResource()) 
function panelDeJugador (jugadorL) 
    ventana = guiCreateWindow(100,100,600,350,"Test de ventanita",false) 
    botonSalir = guiCreateButton(0.01,0.9,0.30,0.1,"cerrar",true,ventana) 
    addEventHandler("onClientGUIClick", botonSalir, salidFuncion) 
    guiWindowSetMovable (ventana, true) 
    showCursor(true) 
end 
addCommandHandler("panel",panelDeJugador) 
function salidFuncion() 
    if source == botonSalir then 
    destroyElement (ventana) 
    showCursor(false) 
  end 
end 

Prueba con eso.

Link to comment
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...