Gerando Arquivos RTF
Como reta final do nosso aplicativo e também do minucurso, vamos retomar o formulário “Sobre o Programa”, mas apenas por uma questão prática. Para falar sobre os arquivos RTF eu precisava de um campo onde pudéssemos escrever textos e, como nosso formulário frmSobre possui este espaço, o utilizaremos, mas isso não agregará nenhuma funcionalidade ao nosso pequeno aplicativo.
Bem, nosso formulário de "Sobre o Programa" atualmente está da seguinte forma:
Quando clicamos no botão "Salvar", o sistema está exibindo o conteúdo do RichTextBox em uma MessageBox e o botão "Carregar Imagem" apenas exibe, na PictureBox, o arquivo selecionado.
Vamos aprender como gerar um arquivo do tipo RTF, que terá como conteúdo o que for digitado no RichTextBox. Para isso faremos uso da ferramenta SaveFileDialog. Vamos localiza-la na Toolbox do Visual C# e arrasta-la para o frmSobre, conforme ilustra a imagem abaixo:
Assim como alguns dos componentes que utilizamos ao longo do minicurso, ele não é exibido dentro do formulário, mas apenas se vincula a ele, permanecendo no rodapé. Na sequência vamos nomear esta ferramenta para "sfdLicensa":
Agora vamos criar o novo código para o evento Click do botão "Salvar", que ficará da seguinte forma:
Comentando-o, teremos:
Vou salvar o seguinte texto:
Agora abro a pasta da minha Área de Trabalho e lá está o arquivo gerado de dentro da nossa pequena aplicação!
E se tentar abrir o arquivo...
Aí está nosso conteúdo!
Bem, agora que já sabemos como gerar arquivos RTF a partir de um RichTextBox, vamos fazer o contrário, que é popular um RichTextBox com o conteúdo de um arquivo RTF.
Vou colocar o seguinte conteúdo dentro do RichTextBox:
Seja Bem Vindo!
Esté é um software sem direitos autorais e que faz parte do minicurso de C# do site Contém Bits!
Além de C#, aqui você aprende sobre:
--> Sistemas Operacionais
--> Redes de Computadores
--> Segurança de Dados
--> Bancos de Dados
E muito mais! Não esqueça de nos adicionar ao seu Favoritos!
www.contembits.com.br
E salva-lo na pasta c:\CB\Sobre.rtf
Agora a ideia é que este conteúdo seja automaticamente inserido no RichTextBox quando o formulário for carregado, ou seja, a aplicação deve ler o arquivo RTF e inserir o seu conteúdo no rtfSobre do formulário. O procedimento para isso é extremamente simples, vejam:
Com apenas uma linha conseguimos este interessante procedimento.
Na sequência, vamos alterar a propriedade ReadOnly do RichTextBox para "True" e diminuir o seu tamanho, para ficar adequado ao conteúdo, como ilustram as imagens a seguir:
A ideia é que o usuário não possa alterar o conteúdo deste RichTextBox, por isso o definimos como ReadOnly. Agora vamos permitir a alteração apenas do logotipo, mas para isso utilizaremos um conceito interessante, que faz uso do Namespace System.IO e geraremos um arquivo no formato TXT para guardar o endereço da imagem escolhida pelo usuário, mas isso fica para o próximo tópico, que será o último!