O gerador de Lero Lero é um software que gera textos prolixos. Embora isso possa parecer uma piada, estes tipos de softwares são usados por exemplo para gerar horóscopos, textos de autoajuda e discursos políticos.
Criamos na sala de aula um destes geradores de lero lero usando uma tabela disponibilizada na internet, a qual não consegui descobrir a sua fonte original, segue;
Perceba que a imagem acima é formada por 4 colunas. A ideia do gerador é colocar cada uma destas colunas em um arquivo texto.
Depois de organizar os textos, vamos para o Visual Studio, a interface do nosso projeto será mostrado na imagem a seguir. Note que temos 4 listboxes, aonde iremos carregar os arquivos textos que criamos no passo anterior;
Programando o gerador de Lero Lero
Como carregar um arquivo TXT em uma ListBox com C#
Agora vamos a programação. Primeiramente salve seus arquivos textos dentro da pasta bin/debug do seu projeto para que possamos acessá-lo de forma simplificada. Para carregar os arquivos textos dentro dos listboxes usamos o seguinte código, a ser colocado no evento load do form
/* CÓDIGO PARA LER O CONTEÚDO DE UM ARQUIVO TEXTO (.TXT) Colocar no evento Load do Form */ string arquivo; arquivo = @"list1.txt"; using (StreamReader conteudoDoArquivo = new StreamReader(arquivo)) { while (!conteudoDoArquivo.EndOfStream) { lstFrase1.Items.Add(Convert.ToString(conteudoDoArquivo.ReadLine())); } } arquivo = @"list2.txt"; using (StreamReader conteudoDoArquivo = new StreamReader(arquivo)) { while (!conteudoDoArquivo.EndOfStream) { lstFrase2.Items.Add(Convert.ToString(conteudoDoArquivo.ReadLine())); } } arquivo = @"list3.txt"; using (StreamReader conteudoDoArquivo = new StreamReader(arquivo)) { while (!conteudoDoArquivo.EndOfStream) { lstFrase3.Items.Add(Convert.ToString(conteudoDoArquivo.ReadLine())); } } arquivo = @"list4.txt"; using (StreamReader conteudoDoArquivo = new StreamReader(arquivo)) { while (!conteudoDoArquivo.EndOfStream) { lstFrase4.Items.Add(Convert.ToString(conteudoDoArquivo.ReadLine())); } }
Perceba que os arquivos textos criados funcionarão como um banco de dados, de modo que você poderá acrescentar mais textos ao arquivo. Agora temos que sortear uma linha das 4 listBoxes para criarmos então uma frase.
Sorteando uma linha da ListBox
O código do sorteio é este, que pode ser colocando dentro do botão “Gerar Frase”.
Random sorteio = new Random(); int frase1 = sorteio.Next(0, lstFrase1.Items.Count); txtTextoPronto.Text = lstFrase1.Items[frase1].ToString(); int frase2 = sorteio.Next(0, lstFrase2.Items.Count); txtTextoPronto.Text += " " + lstFrase2.Items[frase2].ToString(); int frase3 = sorteio.Next(0, lstFrase3.Items.Count); txtTextoPronto.Text += " " + lstFrase3.Items[frase3].ToString(); int frase4 = sorteio.Next(0, lstFrase4.Items.Count); txtTextoPronto.Text += " " + lstFrase4.Items[frase4].ToString();
O resultado será este;
(Caso não consiga visualizar o GIF, clique sobre a imagem)
Bem, encerramos aqui. Veja outros artigos e projetos de C# aqui no Blogson, bons estudos.