1. 程式人生 > >RickTextBox控制元件基礎用法

RickTextBox控制元件基礎用法



.NET Framework內建了兩個基本的控制元件用來提取使用者輸入的文字:TextBoxRickTextBox。這兩個控制元件都派生於基類TextBoxBase,而TextBoxBase派生於Control類。

TextBox控制元件常用於從使用者獲取簡短的文字字串,而RichTextBox用於顯示和輸入格式化的文字(例如,黑體、下劃線和斜體)RickTextBox控制元件使用標準的格式化文字,稱為Rich Text Format(富文字格式)RTF

示例

新建一個C#窗體程式,介面如下所示,該示例可以修改RickTextBox控制元件中選中文字的字型、字號和對齊方式,同時可以將文字儲存為rtf檔案。

Bold按鈕

下面的示例程式碼是對於RichTextBox控制元件中選中的文字進行加粗或者取消加粗。修改文字字型需要用到RichTextBox控制元件的SelectionFont屬性。

<span style="font-size:12px;">        private void ButtonBold_Click(object sender, EventArgs e)
        {
            Font oldFont;
            Font newFont;

            //獲得當前文字的字型
            oldFont = RichTextBox.SelectionFont;

            if (oldFont.Bold)
            {
                //以oldFont為原型,建立新字型,取消了粗體格式
                newFont = new Font(oldFont, oldFont.Style & ~FontStyle.Bold);
            }
            else
            {
                //以oldFont為原型,建立新字型,添加了粗體格式
                newFont = new Font(oldFont, oldFont.Style | FontStyle.Bold);
            }

            //新字型賦給文字
            RichTextBox.SelectionFont = newFont;

            //焦點返回給RichTextBox
            RichTextBox.Focus();
        }</span>
在RichTextBox控制元件中選擇文字後,點選“Bold”後,結果如下圖所示:

對齊方式

也可以修改對齊方式,程式碼如下。修改對齊方式,必須檢查RichTextBox控制元件的SelectionAlignment屬性,HorizontalAlignment是一個列舉,其值有Left、Right、Center、Justify和NotSet。下面的示例程式碼只是檢查文字是否居中,如果居中就把對齊方式修改為左對齊,如果不是就修改為居中。

       private void ButtonCenter_Click(object sender, EventArgs e)
       {
            if (RichTextBox.SelectionAlignment == HorizontalAlignment.Center)
            {
                RichTextBox.SelectionAlignment = HorizontalAlignment.Left;
            }
            else
            {
                RichTextBox.SelectionAlignment = HorizontalAlignment.Center;
            }

            //焦點返回給RichTextBox
            RichTextBox.Focus();
        }

選中文字,點選“Center”按鈕後,執行結果如下所示:


SizeUp字型增大

可以修改控制元件的字號。示例程式碼如下所示,當點選“SizeUp”按鈕時,字型字號增大。SelectionFont.Size可以獲得當前文字的字型大小,注意是float型別,包括用“public Font(FontFamily family, float emSize);”建構函式建立新字型時,字號也是float型別。

這裡之所以試圖獲得當前的“FontFamily”而不是“Font”,主要是因為和字號相關的建構函式“public Font(FontFamily family, float emSize);”的第一個引數是FontFamily型別,它表示字型所屬的字體系列。

        private void ButtonSizeUp_Click(object sender, EventArgs e)
        {
            FontFamily currentFontFamily;
            Font newFont;

            //獲得當前字型所屬的字體系列
            currentFontFamily = RichTextBox.SelectionFont.FontFamily;

            //獲得當前字型的大小
            float oldFontSize = RichTextBox.SelectionFont.Size;

            //設定新的字型大小
            float newFontSize = Convert.ToSingle(oldFontSize + 2.0);

            //建立新字型
            newFont = new Font(currentFontFamily, newFontSize);

            RichTextBox.SelectionFont = newFont;
            RichTextBox.Focus();
        }

其執行結果如下所示:


Save儲存

將窗體文字儲存成rtf檔案,其程式碼如下。由於我們處理的是檔案,所以有可能會遇到異常,必須處理這些異常。

        private void ButtonSave_Click(object sender, EventArgs e)
        {
            try
            {
                RichTextBox.SaveFile("Text.rtf");
            }
            catch (System.Exception err)
            {
                MessageBox.Show(err.Message);
            }
        }
    }

用word開啟生成的“Text.rtf”檔案,其結果如下圖所示:


相關推薦

RickTextBox控制元件基礎用法

 .NET Framework內建了兩個基本的控制元件用來提取使用者輸入的文字:TextBox和RickTextBox。這兩個控制元件都派生於基類TextBoxBase,而TextBoxBase派

IOS控制元件基礎UIView

//新建一個UIView並設定它的位置和大小 UIView *view1 = [[UIView alloc]initWithFrame:CGRectMake(100, 100, 100, 100)]; //為新建的UIView設定背景顏色 view1.b

C#進階 WPF基礎一 XAML控制元件基礎、佈局

一、控制元件模型 WPF的控制元件與WinForm類似。區別在於WPF的控制元件可以用XAML手寫,並且功能更多更強大 二、XAML語言 1、概念:在WPF中用來描述控制元件的語言. 特點: 與XML、HTML語言類似,但對大小寫敏感 一個XAML標籤代表NEW一個控制元件

Python——控制元件基礎操作

一、生成主視窗(主視窗操作) window=tkinter.Tk() #修改框體的名字,也可在建立時使用className引數來命名; window.title('標題名') #框體大小可調性,分別表示x,y方向的可變性;1表示可變,0表示不可變;     window.

ASP.NET中,HiddenField隱藏控制元件用法

HiddenField控制元件就是隱藏輸入框的伺服器控制元件,他能讓你儲存那些不必顯示在頁面上的且對安全性需求不高的資料。也許這個時候應該有這麼一個疑問,為什麼有了ViewState、Session和Cookie等狀態儲存機制,還需要用起HiddenField呢? 增

Asp.net_檔案上傳控制元件FileUpload用法初步

1.aspx <asp:FileUpload ID="fudTest" runat="server" /> <asp:Button I

DataList控制元件詳細用法(二)

設計模版:頁首<headertemplate></headertemplate>頁尾<footertemplate></footertemplate>資料記錄<itemtemplate></itemtempla

Spread控制元件基礎知識(基本常用屬性事件等)

-----------------------基本用法 //取當前行號、列號 int row=e.Row;  int count=e.Count; 或者: int rowindex = fpSprea

asp.net listbox控制元件用法 (轉)

實現列表框中項的移位 即:向上移位、向下移位 具體的思路為:建立一個ListBox物件,並把要移位的項先暫放在這個物件中。 如果是向上移位,就是把當前選定項的的上一項的值賦給當前選定的項,然後 把剛才新加入的物件的值,再附給當前選定項的前一項。 具體程式碼為: //定義一

Android控制元件postDelayed用法,View自帶的定時器

有一個需求是這樣的,點選加關注按鈕後,執行關注操作,成功後按鈕文字變為“已關注”,保持3秒,三秒後按鈕文字便問“取消關注”,點選後執行取消關注的操作 可以使用定時器實現,但是使用View的posyDelayed更加方便 原始碼如下: android.view.View

C# WinForm中NotifyICon控制元件用法【1】

1.設定窗體屬性showinTask=false 2.加notifyicon控制元件notifyIcon1,為控制元件notifyIcon1的屬性Icon新增一個icon圖示。 3.新增窗體最小化事件(首先需要新增事件引用):    // this.SizeChanged += new System.Eve

Gtk開發小結_控制元件基礎

Gtk::Window,Gtk::Fixed,Gtk::Label,Gtk::Button,Gtk::RadioButton,Gtk::Image,Gtk::TextTable,Gtk::Entry。 1. 前提準備 using namespace Gtk; // 使用域名

VC中radiobutton控制元件用法

先為對話方塊加上2個radio button,分別是Radio1和Radio2。 問題1:如何讓Radio1或者Radio2預設選上?如何知道哪個被選上了? 關鍵是選上,“預設”只要放在OnInitDialog()即可。三種方法可以讓它選上, 第一種: ((CButton *

C#ListView控制元件用法

一、ListView類           1、常用的基本屬性:         (1)FullRowSelect:設定是否行選擇模式。(預設為false) 提示:只有在Details檢視該屬性才有意義。         (2) Grid

自定義控制元件基礎 requestLayout()和invalidate()區別

requestLayout(): 重新佈局整個ViewTree,開始呼叫measure()方法。 requestLayout()是view的方法,view也可以呼叫該方法。 Call this

Android筆記---常用控制元件以及用法

這篇文章主要記錄下Android的常用控制元件以及使用的方法,Android 給我們提供了大量的UI控制元件,合理地使用這些控制元件就可以非常輕鬆地編寫出相當不錯的介面,這些是Android學習的基礎,沒有什麼業務邏輯,比較好入手。 這裡主要涉及到的控制元件包

C# SplitContainer 控制元件詳細用法

引自:http://blog.sina.com.cn/s/blog_75c55a1501011280.html 1.可以將 Windows 窗體 SplitContainer 控制元件看作是一個複合體,它是由一個可移動的拆分條分隔的兩個面板。當滑鼠指標懸停在該拆分條上時,指

EDIT控制元件用法

一、利用WM_CTLCOLOR訊息實現Edit   Control的文字與背景色的改變  首先要明白:WM_CTLCOLOR是一個由控制(Control)傳送給它父視窗的通知訊息(Notification   message)。  實現步驟:  生成一個標準的單文件應用程式

react-weui元件的運用之上傳圖片控制元件用法及input上傳圖片

第一步:連線UI查詢官方文件;連結:https://weui.github.io/react-weui/docs/#/react-weui/docs/page/1/articles/12; 第二步:安裝react-weui npm i --save weui reac

Report Machine(RM)報表控制元件簡單用法-delphi

RM(Report Machine)是一個功能強大的Delphi報表控制元件包。使用它可以製作出非常複雜的報表。下面講述最簡單的用法: 在Form上放上兩個資料庫控制元件:ADOConnection和ADOQuery 設定好ADOConnection的ConnectionS