Jump to content

Como soluciono esto


Recommended Posts

Cree un panel de viajes por todo San Andreas, tiene 3 gridlist. LS, SF, LV el problema es que cuando selecciono un row de LS, pero luego selecciono un ROW de SF me quedan ambos seleccionados, como logro que solo quede marcado un solo gridlist, osea que desmarque las gridlists seleccionadas anteriormente.

Link to comment
  
guiGridListSetSelectedItem 
  

si, ya lo habia intentado, pero desmarca el row al instante, necesito es que se desmarque el row, solo si se selecciona otra gridlist diferente.

function WARPSF() 
if ( ROWSF) then 
local row, col = guiGridListGetSelectedItem (SF) 
 guiGridListSetSelectedItem ( SF, -1, -1) 
        if ( row and col and row ~= -1 and col ~= -1 ) then 
            local Lugares = guiGridListGetItemText (SF, row, 1) 
            if ( Lugares == "Aeropuerto SF" ) then 
                triggerServerEvent("WARP11", getLocalPlayer() ) 
                guiSetVisible(VENTANA, false) 
                showCursor(false) 
                setElementFrozen(localPlayer, false) 
            elseif ( Lugares == "Cranberry Station" ) then 
                triggerServerEvent("WARP12", getLocalPlayer() ) 
                guiSetVisible(VENTANA, false) 
                showCursor(false) 
                setElementFrozen(localPlayer, false) 
            end 
        end 
    end 
end 
addEventHandler("onClientGUIClick", GO, WARPSF) 

Link to comment
guiGridListSetSelectedItem ( SF, -1, -1) 

???

No, me explico:

es una ventana, con 3 gridlist

-Los Santos

-San Fierro

-Las Venturas

Cada una tiene 10 rows, el script ya esta practicamente listo, el problema es que si doy click en un row de Los Santos ej: Los Santos > Unity Station, pero si decido mejor ir a San fierro > Aeropuerto, ambos rows quedan marcados, y al momento de viajar, viajan a Unity Station, lo que quiero es que solo marque el row de la gridlist seleccionada, y desmarque las demas aqui una foto:

oqp9Axg.jpg

Link to comment

Puedes comprobar, al seleccionar un item, que si hay otro de alguna de las otras girldlist seleccionado lo quite. Para ello puedes combinar las siguientes funciones:

guiGridListGetSelectedItem

guiGridListSetSelectedItem

Recuerda que guiGridListSetSelectedItem( gridlist, 0, 0 ) restablece los valores

  
if guiGridListGetSelectedItem(gridlist1) == true or  guiGridListGetSelectedItem(gridlist2) == true then 
  
-- restablece los otros gridlist y agarra la opción 
  
else 
  
-- agarra la opción seleccionada 
  
end 
  
  

Link to comment
Puedes comprobar, al seleccionar un item, que si hay otro de alguna de las otras girldlist seleccionado lo quite. Para ello puedes combinar las siguientes funciones:

guiGridListGetSelectedItem

guiGridListSetSelectedItem

Recuerda que guiGridListSetSelectedItem( gridlist, 0, 0 ) restablece los valores

  
if guiGridListGetSelectedItem(gridlist1) == true or  guiGridListGetSelectedItem(gridlist2) == true then 
  
-- restablece los otros gridlist y agarra la opción 
  
else 
  
-- agarra la opción seleccionada 
  
end 
  
  

Intente esto pero no funciono:

function Desmarcar() 
if guiGridlistGetSelectedItem(LS) == true or guiGridlistGetSelectedItem(SF) == true then 
  guiGridlistSetSelectedItem(LS, 0, 0) 
  guiGridlistSetSelectedItem(SF, 0, 0) else 
  guiGridlistSetSelectedItem(LS, 1, 0) 
  guiGridlistSetSelectedItem(SF, 1, 0) 
 end 
end 

Link to comment
  • Recently Browsing   0 members

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