lLinux Posted November 11, 2014 Posted November 11, 2014 Hola a todos, bueno es una duda que tengo hace mucho es como hacer una lista en dxDraw... Se que con dxDrawRectagle y dxDrawText pero como hacer que se cree varias veces sea con valores que esta en una tabla?
iSmokee Posted November 11, 2014 Posted November 11, 2014 mmmm @Tomas se que ni me registras pero que es un loop ?
Sasu Posted November 12, 2014 Posted November 12, 2014 mmmm @Tomas se que ni me registras pero que es un loop ? Un proceso que se repite hasta completar una determinada condición, o mejor llamado en el idioma español un "bucle".
lLinux Posted November 12, 2014 Author Posted November 12, 2014 De que manera hay que usar el bucle? me pueden dar un ejemplo por favor?
Bc# Posted November 12, 2014 Posted November 12, 2014 mmmm @Tomas se que ni me registras pero que es un loop ? Un proceso que se repite hasta completar una determinada condición, o mejor llamado en el idioma español un "bucle". Resumen, un for o un while.
Tomas Posted November 12, 2014 Posted November 12, 2014 Los loops o bucles se pueden ejecutar con la sentencia for. Para tu caso en específico puedes hacer algo así: local categorias = { [1] = "A", [2] = "B", [3] = "C", [4] = "D", } for index,value in ipairs (categorias) do dxDrawText(tostring(value),bla,bla,bla,bla,bla,bla,bla....) end Obviamente si usas eso quedarán todos en la misma posición, podrías multiplicar el valor del index* X y así hacer que no te quede todo junto.
Bc# Posted November 13, 2014 Posted November 13, 2014 Los loops o bucles se pueden ejecutar con la sentencia for.Para tu caso en específico puedes hacer algo así: local categorias = { [1] = "A", [2] = "B", [3] = "C", [4] = "D", } for index,value in ipairs (categorias) do dxDrawText(tostring(value),bla,bla,bla,bla,bla,bla,bla....) end Obviamente si usas eso quedarán todos en la misma posición, podrías multiplicar el valor del index* X y así hacer que no te quede todo junto. ¿Por que el tostring si la variable ya es un string?
Tomas Posted November 13, 2014 Posted November 13, 2014 Los loops o bucles se pueden ejecutar con la sentencia for.Para tu caso en específico puedes hacer algo así: local categorias = { [1] = "A", [2] = "B", [3] = "C", [4] = "D", } for index,value in ipairs (categorias) do dxDrawText(tostring(value),bla,bla,bla,bla,bla,bla,bla....) end Obviamente si usas eso quedarán todos en la misma posición, podrías multiplicar el valor del index* X y así hacer que no te quede todo junto. ¿Por que el tostring si la variable ya es un string? Cuando loopeo suelo convertir los valores, aunque aveces no sea necesario lo hago igual, estúpidas costumbres
Tonyx97 Posted November 13, 2014 Posted November 13, 2014 Como te están diciendo, puedes hacer un bucle "for" y al mismo tiempo para definir las posiciones de cada row puedes usar el index del for para hacer que la posicion cambie hacia abajo (o arriba) multiplicando la index por la anchura del dx (la anchura del dx creo que no es exacta como la GUI, es demasiado alta a si que puedes ir probando). Es algo asi dxDrawText(tostring(loquesea),x,y+(index*40),anchura,altura, etc etc) con esto haces que conforme aumenta la index, cada dx se crea a una distancia de 40 píxeles del otro.
Tomas Posted November 13, 2014 Posted November 13, 2014 Como te están diciendo, puedes hacer un bucle "for" y al mismo tiempo para definir las posiciones de cada row puedes usar el index del for para hacer que la posicion cambie hacia abajo (o arriba) multiplicando la index por la anchura del dx (la anchura del dx creo que no es exacta como la GUI, es demasiado alta a si que puedes ir probando). Es algo asi dxDrawText(tostring(loquesea),x,y+(index*40),anchura,altura, etc etc) con esto haces que conforme aumenta la index, cada dx se crea a una distancia de 40 píxeles del otro. Eso mismo le quise decir, buena explicación
Recommended Posts