Anuncios Google

Duda sobre tablas

Duda 1 : Seria posible imprimir todos los datos de una tabla de forma automatica

ej.:misredes = wlan.getconfigs()

Esa seria la tabla

Duda 2 : se podria crear una tabla tipo la de word osea una cuadricula

 

PD : todo seria en LuaDev

 



Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Pues si... para imprimir sólo

Pues si... para imprimir sólo los nombres de las redes con un simple for se puede...

redes = wlan.getconfigs()
y=5 --Para blitearlas sin que se encimen
for i=1,#redes do
  screen.print(5,y,redes[i].name)
    y=y+20  --Depende del tamaño de fuente q uses... experimenta :P
end

Si quieres agregar más info... pues la agregas xD

Para la cuadrícula, también se puede pero debes programarlo tu (dibujar las líneas que delimitan las celdas no tiene complicación, draw.line y listo).

Pocas cosas no se pueden hacer en LuaDEV, el resto es cuestión de imaginación y de usar sabiamente lo que tengas a la mano, pero si no practicas ni pruebas por ti mismo nunca lograrás nada.

Imagen de Chimecho

Pero

Eso en caso de tablas con índices numéricos y que el contenido sean más números o strings... Pero y qué hay de los índices que sean strings, y que los contenidos sean strings, más tablas, números, funciones, imágenes, etc?

Para eso tengo una función recursiva que hice hace tiempo, claro que no imprime el contenido de las funciones ni de las imágenes, sólo lo que se pueda sacar:

function toString(var)
	local tipo = type(var)
 
	if tipo == "number" or tipo == "boolean" or tipo == "string" or tipo == "userdata" or tipo == "function" then -- si es numero, booleano, string, userdata (imágenes, sonidos, objetos, etc...), o una función
		return tostring(var); -- usar la función normal
	elseif tipo == "table" then -- si es una tabla mostrarla como: [[clave] = valor, [clave] = valor] y cada valor, será pasado a string usando esta misma función
		local str = "["; -- abrimos [
		local first = true; -- para ver dónde va coma..
 
		for k,v in pairs(var) do -- recorremos cada par clave, valor
			if first then
				str = str .. "["..k.."] = "..toString(v); -- aumentamos: [clave] = valor
				first = false;
			else
				str = str .. ", ["..k.."] = "..toString(v); -- aumentamos: [clave] = valor,
			end
		end
 
		return str .. "]" -- cerramos ]
	else -- cualquier otro
		return "unknown type";
	end	
end

Uso: toString(loquesea);

loquesea puede ser lo que sea, por ejemplo, una tabla como en tu caso.

retorna loquesea convertido a string.

Saludos!



PSP FAT [5.00 M33-6] [6.60 ME] [Hard Moded] / Nintendo Wii [4.1U] [cIOS Hermes] [D2X cIOS] / iPhone 3G [4.2.1] [BB 05.13.04] [redsn0w] / iPod Touch 4 [6.1] [evasi0n]

07/05/10: Tuve el placer de llamarle con todo derecho "N00B" a molotovi xDDD

Recuerda: Sé el intérprete -_-

Imagen de HappyFlowerPP

gracias

se que se tiene que provar pero sin PSP no se puede

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.