C#記事本的製作

來源:互聯網
上載者:User

標籤:

一、功能表命令的實現

textbox:
    屬性:
        text:文本
        selectedtext:擷取或設定選中文本
        canundo:是否能夠撤銷
    方法:
        undo:撤銷
        clearundo:清空撤銷緩衝區
        cut:剪下
        copy:複製
        Paste:粘貼
        SelectAll:全選
對話方塊:
    showdialog();顯示對話方塊,返回一個dialogresult的枚舉類型
   
    colorDialog:color屬性,用來擷取顏色
    folderBrowserDialog:SelectedPath選中路徑
    fontDialog:font屬性,返回一個font類型的值,裡面儲存了關於字型的設定
    openFileDialog:
        filename擷取或設定檔案路徑包含檔案名稱
        filenames 是檔案路徑字串數組
        filter:檔案篩選器 格式為 提示文本一|*.尾碼|提示文本二|*.尾碼|提示文本三|*.尾碼
    saveFileDialog1:
        filename擷取或設定檔案路徑包含檔案名稱
        filenames 是檔案路徑字串數組
        filter:檔案篩選器 格式為 提示文本一|*.尾碼|提示文本二|*.尾碼|提示文本三|*.尾碼

記事本的製作:

1.用MenuStrip製作好功能表列;

2.將文字框設定MultiLine,將Dock設定為fill;

3.設定[編輯] 功能表命令的事件;

4.設定[檔案] 功能表命令的事件;

注意:在設定需快顯視窗的命令時需提前將相應的視窗工具拖到設計表單中,拖入後在表單下部可以看到,所示:

各個功能表命令的觸發事件  private void 撤銷ToolStripMenuItem_Click(object sender, EventArgs e)        {            if (textBox1.CanUndo)            {                textBox1.Undo();            }        }        private void 剪貼ToolStripMenuItem_Click(object sender, EventArgs e)        {            if (textBox1.SelectedText != null)            {                textBox1.Cut();            }        }        private void 複製ToolStripMenuItem_Click(object sender, EventArgs e)        {            if (textBox1.SelectedText != null)            {                textBox1.Copy();            }        }        private void 粘貼ToolStripMenuItem_Click(object sender, EventArgs e)        {            textBox1.Paste();        }        private void 刪除ToolStripMenuItem_Click(object sender, EventArgs e)        {            if (textBox1.SelectedText != null)            {                textBox1.SelectedText = "";            }        }//設定需彈出對話方塊的檔案功能表命令的事件        private void 字型ToolStripMenuItem_Click(object sender, EventArgs e)        {            fontDialog1.ShowDialog();//顯示字型對話方塊            if (fontDialog1.Font != null)//若使用者選定了一個字型,顯示該字型的大小            { MessageBox.Show(fontDialog1.Font.Size.ToString()); }        }        private void 開啟ToolStripMenuItem_Click(object sender, EventArgs e)        {            openFileDialog1.ShowDialog();        }        private void 儲存ToolStripMenuItem_Click(object sender, EventArgs e)        {            saveFileDialog1.ShowDialog();            if (saveFileDialog1.FileName != null)            {                MessageBox.Show(saveFileDialog1.FileName);            }        }
按“字型”命令以後

 

二、通過檔案流讀寫資料

需要的命名空間:using system.IO;

流:
    輸入資料流:
         string filename = openFileDialog1.FileName;
               //通過讀入流進行檔案讀取
               StreamReader sr = new StreamReader(filename);
               textBox1.Text = sr.ReadToEnd();
               sr.Close();
    輸出資料流:
           string filename = saveFileDialog1.FileName;
                    //寫入流,可以在硬碟上建立檔案,並為檔案寫入資訊
                    StreamWriter sw = new StreamWriter(filename);
                    sw.Write(this.textBox1.Text);
                    sw.Close();
    this:代表的它所在的那個類當前對象

輸入資料流的練習:

private void 開啟ToolStripMenuItem_Click(object sender, EventArgs e)        {                        openFileDialog1.ShowDialog();            if (openFileDialog1.FileName != null)//如果使用者選擇了一個檔案,就讀入該檔案的文本            {                string openFileName = openFileDialog1.FileName;                StreamReader sr = new StreamReader(openFileName);//將檔案名稱作為參數,建立檔案流對象                textBox1.Text= sr.ReadToEnd();//將讀取的文本輸送到文字框中                 sr.close();//要記得用完關閉檔案流            }                     }
 

在案頭上找到aaa.txt,點擊開啟,可以看到文字框有了文本


列印:
    列印對話方塊:printdialog
    版面設定:pagesetupdialog
            這兩個對話方塊都需要通過設定printdocument來指定列印對象
    printdocument:列印對象,必須要有,一塊畫板,用於印表機與列印內容之間中轉,印表機列印的是printdoment
    printDocument1_PrintPage:事件,每列印一頁之前觸發,用於給printdocument指定列印內容
    通過畫板把內容畫到列印對象的頁上:
        System.Drawing.Font f = new System.Drawing.Font("宋體",12);
            e.Graphics.DrawString(textBox1.Text,f,System.Drawing.Brushes.Aqua,5,5);
    最後列印: 列印對話方塊那,如果列印對話方塊返回確定列印,就執行printdocument.print();

 

 

小知識:ctrl+e+d自動對齊;
函數名後輸入一個“(”或者游標在()裡面按Ctrl+shift+空格,可以查看重載內容。

使用函數注意事項:要調用的內容是否確定存在;
在什麼條件下需要調用;

C#記事本的製作

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.