ListBox

Aquí puedes preguntar o compartir tus dudas y conocimientos acerca del programa
Estimados
:SOS:
Necesito ayuda soy algo novato en el tema, estoy trabajando con un listbox pero no logro configurarlo
la idea de mi lista es que al hacer click a una palabra de ella aparesca un paragraph que esta invisible
y los demas paragraph se hagan invisibles, al hacer esto con un comando normal lo que hago es

Paragraph.SetVisible("Paragraph1", true);
Paragraph.SetVisible("Paragraph2", false);
Paragraph.SetVisible("Paragraph3", false);
Paragraph.SetVisible("Paragraph4", false);
Paragraph.SetVisible("Paragraph5", false);
Paragraph.SetVisible("Paragraph6", false);
y asi sucesivamente si tengo mas fraces que poner

pero no entiendo como configurar el listbox

2da Parte -->


Bueno aplique lo que me dijo Rafa pero aun no funciona

Aca unas imagenes del Listbox

Imagen

Imagen

Denuevo expongo que la idea es que al hacer click a una palabra se haga visible un paragraph que esta invisible, explico mejor, tengo 23 paragraph uno encima de otros con diferentes textos pero todos invisibles, cada paragraph esta ligado a una palabra por lo que son 23 palabras diferentes, la idea es que al hacer click a una palabra aparesca el texto indicado con el numero asignado a la palabra
lamentablente el codigo que me dio rafax no funciono :sorry:

Ojala ahora se entienda mejor


Saludos y gracias
No se como tienes o quieres estructurar la aplicación , así que he hecho esto , suponiendo que el número de paragraph esta determinado y se llaman como pones en el ejemplo:
-- Este código iria en el evento On Select del listBox.
-- para esto deberias en la data de cada item del listbox asociar el nombre del paragraph que le corresponde.
local sParagraph = ListBox.GetItemData("ListBox1", e_Index);-- Obtienes la data al selccionar el item

if sParagraph ~= "" then--

	for count = 1,10 do-- suponiendo que el numero de paragraphs sea 10
	
		Paragraph.SetVisible("Paragraph"..count, false);-- Ocultamos todos..
	end
	Paragraph.SetVisible(sParagraph,true);-- Y hacemos visible el que corresponde al item
	
end
Rafa! te he buscado en msn pero no apareces :/
Perdona fallo mio el listbox no dispone de variable e_index , cambia solo las primeras lineas de código:
local tsel = ListBox.GetSelected("ListBox1")
local sParagraph = ListBox.GetItemData("ListBox1", tsel[1]);
Gracias! Funciono de Maravilla, Eres Un Genio :D

PD: aceptame en MSN
Discupen que me entrometa, y eesta pregunta no tiene nada q ver con el lixtbox, pero, me causa curiosidad que significa el "local", xq de casualidad chekeando en uno de mis proyectos me di cuenta que lo puse antes de comprobar un archivo en la red. le puse

local conectando = HTTP.TestConnection("http://www.mydomain.com/myscript.php", 20, 80, nil, nil);


O es que el foro al poner un codigo lo pone asi?
:S

Imagen

que es?
se asigna local a una variable cuando no queremos que sea global osea... que esa variable y sus valores solo tengan valor en el formulario donde se declara.
Por ejemplo si yo declaro , en On show de la pagina :
local var = 10;
var solo valdra 10 en el código de OnShow ,si la llamas en cualquier otro lado del proyecto sera nil

Por otro lado , si la declaras como local dentro de un bucle solo tendra valor en el bucle , osea:
for x= 1, 10 do
local var = x + 1;
-- var sera 2,3,4,5,6, hasta 11
end

Dialog.Message("",var);-- Aqui var sera nil
interesante, yo no sabia eso, muchas gracias por aclarar mi duda