Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

VB.NET - Criando um Editor de textos


ℛiqu∊
 Compartilhar

Posts Recomendados

As vezes é melhor mostrar como se faz do que ficar falando e teorizando. Neste artigo vou criar um editor de textos no VB .NET com o objetivo de mostrar como implementar algumas funcionalidades que vão usar alguns dos novos recursos presentes no VB .NET ; assim você estará aprendendo na prática...1_legal.gif

Neste artigo vou procurar mostrar como :

 

  1. Usar o controle Toolbar
  2. Usar o controle Imagelist
  3. Criar um menu de contexto
  4. Usar os controles SaveFileDialog e OpenFileDialog
  5. Implementar a impressão
  6. Usar os recursos de visualizar impressão no VB.NET

1 - Inicie um novo projeto no Visual Studio.NET com as seguintes características (sinta-se a vontade para alterar a seu gosto.)

 

  1. Project Types : Visual Basic Projects
  2. Templates : Windows Application
  3. Name : EditorNet
  4. Location :c:\vbnet\EditorNet

Nota: Como vamos usar os namespaces System.IO e System.Drawing.Printing . As duas primeiras linhas do seu projeto deverão ser as seguintes:

 

 

É necessário se cadastrar para acessar o conteúdo.

Na classe do projeto devemos declarar o objeto StringtReader e ativar eventos para o formulário. Usaremos estes recursos na visualização da impressão e impressão do texto.

 

É necessário se cadastrar para acessar o conteúdo.

No formulário padrão - form1.vb - vamos incluir os seguintes controles:

 

  1. RichTextBox
  2. Toolbar
  3. ImageList
  4. SaveDialog
  5. OpenDialog

A aparência inicial do nosso projeto deverá ser a da figura abaixo:

vbnedit1.gif - Note os componentes : SaveFileDialog1 , OpenFileDialog1 e ImageList1 inseridos no formulário. Vamos agora alterar algumas propriedades dos controles inseridos. Vamos começar com o formulário. Altere suas propriedades conforme a seguir:

 

É necessário se cadastrar para acessar o conteúdo.

 

Os controles ToolBar e ImageList são usados em conjuntos para podermos criar um menu com imagens. As imagens são definidas no controle ImageList; vamos usar o nome padrão - ImageList1 - e definir as imagens conforme abaixo:

vbnedit2.gif

  • Selecione o controle e pressione F4
  • Selecione na categoria Appearance a propriedade Images e clique em Collection
  • Para incluir uma imagem clique no botão - Add e selecione a imagem que desejar

 

Vamos agora configurar o controle ToolBar . Selecione em Properties na categoria Behavior a propriedade Buttons e clique em Collections ; a seguir configure o controle conforme a seguir:

vbnedit3.gif - Você deve clique no botão Add e a seguir configurar as propriedades:

  • Name
  • ImageIndex
  • Style

- Criamos 10 botões com Style do tipo PushButton e 5 botões do tipo Separator

Para vincular as imagens aos botões definidos na ToolBar defina propriedade ImageList da categoria Behavior igual ao nome do nosso controle ImageList : ImageList1. (Feito isto as imagens irão ser exibidas nos buttons criados.)

No controle RichTextBox1 altere o nome do controle para rtbEditor e altere a propriedade Text para um valor nulo , e a propriedade AutoWordSelection para True.

 

É necessário se cadastrar para acessar o conteúdo.

 

A aparência do seu projeto deverá ser parecida com a da figura abaixo:

vbnedit7.gif - Os botões inseridos no projeto tem as seguintes funcionalidades:

  1. Novo
  2. Abrir
  3. Salvar
  4. Copiar
  5. Colar
  6. Negrito
  7. Itálico
  8. Sublinhado
  9. Visualizar Impressão
  10. Imprimir
  11. Ajuda
  12. Sair

Agora vamos criar o código referente a cada funcionalidade relacionada a cada botão. Vamos criar os procedimento e depois relacioná-las a cada botão da Toolbar.

- O código do para criar um novo arquivo. Note a sintaxe da caixa de mensagem MessageBox.

 

 

É necessário se cadastrar para acessar o conteúdo.

 

 

- Código para Abrir um arquivo existente.

 

 

É necessário se cadastrar para acessar o conteúdo.

 

 

- código para Salvar o arquivo. Estou usando a classe Stream.

 

 

É necessário se cadastrar para acessar o conteúdo.

 

 

- A seguir o código para aplicar Negrito , Itálico e Sublinhado.(O código é quase idêntico).Cada efeito é aplicado somente sobre o texto que for selecionado ( RichTextBox1.SelectionFont ).

 

 

É necessário se cadastrar para acessar o conteúdo.

 

 

Para incluir as funcionalidades de visualização de impressão e de impressão devemos fazer o seguinte:

 

 

É necessário se cadastrar para acessar o conteúdo.

Para ativar o recurso de visualizar a impressão devemos primeiro escrever o código para imprimir o texto no evento PrintPage do objeto PrintDocument. Note que o procedimento PrintDocument1_PrintPage possui argumento do tipo PrintPageEventArgs que chamamos de texto. A seguir temos o código :

 

É necessário se cadastrar para acessar o conteúdo.

 

 

- Primeiro calculamos o número de linhas por página par podermos controlar a impressão. Usamos as medidas das margens do documento e o tamanho da fonte usada na impressão para fazer este cálculo.

linhasPorPagina = texto.MarginBounds.Height / FonteDeImpressao.GetHeight(texto.Graphics)

- Implementamos um StringReader para ler cada linha do texto ; Usando um laço While imprimimos linha por linha e incrementamos o contador de linha , verificando se o numero de linhas impresso é maior que o número de linhas por página.

 

 

While
contador < linhasPorPagina

' calcula a posicao da proxima linha baseado na altura da fonte de acordo com o dispostivo de impressao

Posicao_Y = (MargemSuperior + (contador * FonteDeImpressao.GetHeight(texto.Graphics)))

' desenha a proxima linha no controle richtext

texto.Graphics.DrawString(linha, FonteDeImpressao, meupincel, MargemEsquerda, Posicao_Y, New StringFormat())

 

contador += 1

linha = leitor.ReadLine()

End While

 

 

Agora devemos definir o procedimento que irá permitir visualizar a impressão. No código abaixo temos a rotina pronta . Definimos que janela de visualização será maximizada e que

 

 

É necessário se cadastrar para acessar o conteúdo.

 

 

Executando o projeto , carregando um texto e ativando a visualização iremos obter:

 

 

vbnedit9.gif

vbnedita.gif

 

Vamos imprimir !!! Para imprimir o documento vamos inserir o componente PrintDialog no nosso projeto. Após fazer isto basta incluir o seguinte código na sua rotina que irá ativar a impressão. Ao lado a imagem que mostra a janela imprimir exibida pelo código.

 

 

É necessário se cadastrar para acessar o conteúdo.

Vamos ativar a funcionalidade do botão - Ajuda . Na verdade iremos inserir um novo formulário e nele iremos exibir o nome do sistema , uma imagem e um link para ser acesso via web. A primeira coisa a fazer e inserir o formulário - form2.vb - no menu Project - opção - Add Windows Forms.

No formulário inserido vamos incluir os seguintes controles : GroupBox , Label e LinkLabel. Abaixo temos a visualização do formulário e o código do evento Click do controle LinkLabel e do formulário:

 

 

É necessário se cadastrar para acessar o conteúdo.

 

 

Quando o usuário clicar no link estamos usando o método start do objeto Process para abrir o navegador com a url indicada.

Só falta mostrar as opções Copiar e Colar. Antes disto eu vou mostrar como é o código que dispara cada rotina associado aos botões do menu:

 

 

É necessário se cadastrar para acessar o conteúdo.

 

 

Vamos agora ao código do botão - Copiar - que permite copiar partes dos textos selecionados , é bem simples:

 

 

É necessário se cadastrar para acessar o conteúdo.

 

 

Agora o código do botão - Colar - que permite o texto selecionado:

 

 

É necessário se cadastrar para acessar o conteúdo.

 

 

Acabamos de criar um editor de texto , simples na verdade , mas que abre qualquer tipo de arquivo e que possui alguns recursos. Você pode melhorar o editor com mais recursos. Use sua criatividade e bom estudo... 1_pisca.GIF

 

[sENHA]Créditos:

José Carlos Macoratti[/sENHA]

 

Link para o comentário
Compartilhar em outros sites

auhauhauhahu

VB pra mim é a coisa mais facil O_o'

é só aprender o que significa 5 palavras , e você vai poder fazer TUDO no vb!

por isso =)

 

Oba que bom que VB pra você é fácil, então meh diz ai como Criar um modificador hexadecimal de arquivo, por exemplo: você mostra aonde esta o executável e quando você clica em um botão qualquer ele mundar o hexadecimal de um valor x para outro valor x e depois salvar o executável em um diretório que eu escolher.. kkkkk

 

eu achei script aqui na net porem não consegui usar!

Link para o comentário
Compartilhar em outros sites

você só vai adicionar o negocio (esqueci como se fala kk) chamado "SaveFileDialog" que é para salvar um arquivo , e o "LoadFileDialog" que é para abrir um arquivo =)

e então , em sua propriedate filter , você coloca:

 

Se for para Salvar:

É necessário se cadastrar para acessar o conteúdo.

 

Se for para Abrir:

É necessário se cadastrar para acessar o conteúdo.

 

xD

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.