Vic_RattleHead Posted May 27, 2016 Share Posted May 27, 2016 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
Vic_RattleHead Posted May 27, 2016 Author Share Posted May 27, 2016 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
Enargy, Posted May 28, 2016 Share Posted May 28, 2016 guiGridListSetSelectedItem ( SF, -1, -1) ??? Link to comment
Vic_RattleHead Posted May 28, 2016 Author Share Posted May 28, 2016 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: Link to comment
Bc# Posted May 28, 2016 Share Posted May 28, 2016 Puedes hacer 3 botones, o crear una sola gridlist con las 3 ciudades dentro. Link to comment
Mr.Aleks Posted May 28, 2016 Share Posted May 28, 2016 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
Vic_RattleHead Posted May 28, 2016 Author Share Posted May 28, 2016 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
aka Blue Posted May 28, 2016 Share Posted May 28, 2016 Tienes la función mal puesta. No es guiGridlistGetSelectedItem, es guiGridListGetSelectedItem, te faltó la L en mayúscula de list. Link to comment
Vic_RattleHead Posted May 29, 2016 Author Share Posted May 29, 2016 Si, me di cuenta del error un tiempo después aunque también era por que guiGridListSetSelectedItem no tenia un valor, ya lo pude resolver y he terminado mi recurso. ¡Muchas gracias! Link to comment
Recommended Posts