czcionka i jej kolor w richtextbox

0

witam
tworzę edytor w C#. chciałbym żeby można bylo dowolnie wybrać sobie kolor i czcionkę odpowiedniego słowa linii. na razie potrafię to statycznie zrobić tzn ustawić w programie i przypisać np do przycisku i dopiero po naciśnięciu zmienia czcionkę i kolor. czy w c# da sie zrobić tak jak ja bym chciał?

0

RichTextBox ma właściwość SelectionFont, która możesz dowolnie manipulować: http://msdn.microsoft.com/en-us/library/system.windows.forms.richtextbox.selectionfont.aspx

0

no dobra ale tu dalej w programie ustalam czcionkę i kolor. mi chodzi o to że jak zrobie na w aplikacji przycisk o nazwie czcionka to chcę żeby pokazała mi sie lista czcionek. to samo tyczy się kolorów. da się coś takiego zrobić?

0

Listę fontów można wyświetlić w ComboBoxie, a do kolorów jest klasa ColorBrowserDialog czy jakoś tak.

0

dobra czcionka i kolor to przeszłość. teraz mam problem z kursywą i podkreśleniem. o ile pogrubienie działa to reszta nie. mógłby ktoś przeanalizować kod i napisać mi czy coś jest nie tak?

   private void richTextBox1_SelectionChanged ( object sender, EventArgs e )
     {
         if ( richTextBox1.SelectionFont != null )
         {
            toolStripButton4.Checked = richTextBox1.SelectionFont.Bold;
            toolStripButton5.Checked = richTextBox1.SelectionFont.Italic;
            toolStripButton6.Checked = richTextBox1.SelectionFont.Underline;
         
         }
     }

           private void toolStripButton4_Click(object sender, EventArgs e)
     {
         if ( richTextBox1.SelectionFont == null )
         {
             return ;
         }

         FontStyle style = richTextBox1.SelectionFont.Style;
        
         if ( richTextBox1.SelectionFont.Bold )
         {
             style &= ~FontStyle.Bold;
         }
         else
         {
             style |= FontStyle.Bold;
            
         }
         richTextBox1.SelectionFont = new Font ( richTextBox1.SelectionFont, style ) ;

     }
           private void toolStripButton5_Click(object sender, EventArgs e)
           {
               if (richTextBox1.SelectionFont == null)
               {
                   return;
               }
               FontStyle style = richTextBox1.SelectionFont.Style;

               if (richTextBox1.SelectionFont.Italic)
               {
                   style &= ~FontStyle.Italic;
               }
               else
               {
                   style |= FontStyle.Italic;
               }
               richTextBox1.SelectionFont = new Font(richTextBox1.SelectionFont, style);
           }

           private void toolStripButton6_Click(object sender, EventArgs e)
           {
               if (richTextBox1.SelectionFont == null)
               {
                   return;
               }

               FontStyle style = richTextBox1.SelectionFont.Style;

               if (richTextBox1.SelectionFont.Underline)
               {
                   style &= ~FontStyle.Underline;
               }
               else
               {
                   style |= FontStyle.Underline;
               }
               richTextBox1.SelectionFont = new Font(richTextBox1.SelectionFont, style);
           }

1 użytkowników online, w tym zalogowanych: 0, gości: 1