回覆列表
  • 1 # 使用者6602652349876

    如果richtextbox1.selecttext.font!=null 可以直接透過richtextbox1.selecttext.font=選擇的字型

    richtextbox1.selecttext.color=選擇的顏色 賦值。

    如果richtextbox1.selecttext.font=null(當選擇的內容的字型不一致時)

    就不能用直接賦值的方法了,以下是我使用的方法,分享出來供你參考。

    主要是透過傳引數的方法來設定文字的字型和顏色。

    參考以下的方法相信你可以搞定。

    ///

    /// 字型名稱

    ///

    internal void SetFontName(string fontName)

    {

    RichTextBox tempRichTextBox = new RichTextBox(); //將要存放被選中文字的副本

    int curRtbStart = m_TextBox.SelectionStart;

    int len = m_TextBox.SelectionLength;

    int tempRtbStart = 0;

    Font font = m_TextBox.SelectionFont;

    if (len

    {

    m_TextBox.SelectionFont = new Font(fontName, font.Size, font.Style);

    return;

    }

    tempRichTextBox.Rtf = m_TextBox.SelectedRtf;

    for (int i = 0; i

    {

    tempRichTextBox.Select(tempRtbStart + i, 1); //每次選中一個,逐個設定字型大小

    tempRichTextBox.SelectionFont =

    new Font(fontName, tempRichTextBox.SelectionFont.Size,

    tempRichTextBox.SelectionFont.Style);

    }

    tempRichTextBox.Select(tempRtbStart, len);

    m_TextBox.SelectedRtf = tempRichTextBox.SelectedRtf; //將設定字型大小後的副本複製給原型

    m_TextBox.Select(curRtbStart, len);

    // 啟用文字框

    m_TextBox.Select();

    }

  • 中秋節和大豐收的關聯?
  • 交通安全手抄報寫什麼內容?