Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Fábio Teixeira

C# editor de texto

Recommended Posts

Olá galera. Estou criando em C# um pequeno editor de texto com uma rich text box. Como faço para numa combo box aparecer o tamanho da letra que o utilizador quer? Tal como no word que aparece do tamanho 8 até ao 40 e tal, como faço isso em c# ? Outro problema que estou tendo é como encontrar uma string que o utilizador pretende. O utilizador escreve numa textbox uma palavra e ele verifica se essa palavra está na rich textbox e sublinha-a se estiver. Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala Fábio, tranquilo?

 

Então, eu já criei um pequeno editor de textos (blackword), mas que é escrito em vb. Se você quiser o código fonte completo, me manda um email, mas aqui está o que te interessa:

 

1) Para a fonte é fácil, é só criar um combobox com os valores que quiser (por exemplo, de 8 à 40). No evento SelectedIndexChanged do seu combobox, é só colocar (se o combobox for cb1 e o ritch tetx box for rtb):

 

rtb.SelectionFont = new Font(rtb.SelectionFont.Name, cb1.SelectedItem, rtb.SelectionFont.Style)
rtb.Focus()

2) Para enocntrar uma string, use a função Find, por exemplo:

 

rtb.Find(TextBox1.Text);

Este código vai procurar e selecionar o texto descrito no TextBox1. Se você der uma olhada, a função Find tem alguns outros parâmetros que podem ajudar ao pesquisar uma string.

 

(Uma dica, já que você está criando um editor de textos, marque a propriedade HideSelection do RTB como true, se ainda não fez, pois assim a seleção de texto feita no rtb não vai desaparecer ao clicar no combobox de tamanho, de fontes, etc).

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu cara. O codigo do richtextbox.find nao sublinhou nada, como faço para ele encontrar? Desculpa estar chateando mas tenho trabalho para entregar depois de amanha e tou com bastante duvidas. Tenho tambem outro problema que é como saber qual a linha em que o utilizador esta escrevendo na richtextbox. E agora nao tou conseguindo utilizar o Context menu strip, clico com o botao direito do rato mas nao aparece as opçoes, que tenho que fazer, ja procurei na net, ja fiz como dizem mas nao dá :X . Está ai o link do programa que estou trabalhando. http://www.megaupload.com/pt/?d=IIGFYBTF . O que eu nao sei fazer é encontrar a string na rich textbox, por o contextmenu strip trabalhando, e saber a linha em que o utilizador está escrevendo. Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, sobre o contextmenustrip, você deve mudar a propriedade ContextMenuStrip do seu richtextbox para o nome do seu contextmenu. Agora, sobre a função Find, eu testei richTextBox1.Find("teste"); e funcionou. Você só precisa de um form com um textbox e no evento de um botão usar o Find com o texto do textbox.

 

Para o numero da linha, eu achei este código neste site

 

int RowIndex;

RowIndex = richTextBox1.GetLineFromCharIndex(richTextBox1.SelectionStart) + 1;

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.