我寫的一段"記事本"的程式,請高手指教. (轉)
不知是不是這麼用的,我寫的有沒有體現C#的思想.
沒有寫完,也很不完善,只是請各位指點一下.謝謝!!
____________________________________________________
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System..Forms;
using System.Data;
using System.IO;
namespace notePad
{
///
/// Form1 的摘要說明。
///
public class notePad : System.Windows.Forms.Form
{
private System.Windows.Forms.RichTextBox richTextBox1;
private System.Windows.Forms.MainMenu mainMenu1;
private System.Windows.Forms.MenuItem menuItem8;
private System.Windows.Forms.MenuItem menuItem10;
private System.Windows.Forms.MenuItem menuItemFile;
private System.Windows.Forms.MenuItem menuItemEdit;
private System.Windows.Forms.MenuItem menuItemOption;
private System.Windows.Forms.MenuItem menuItemHelp;
private System.Windows.Forms.MenuItem menuItemNew;
private System.Windows.Forms.MenuItem menuItemOpen;
private System.Windows.Forms.MenuItem menuItemPrint;
private System.Windows.Forms.MenuItem menuItemExit;
private System.Windows.Forms.MenuItem menuItemFont;
private System.Windows.Forms.MenuItem menuItemWrap;
private System.Windows.Forms.MenuItem menuItemAbout;
private System.Windows.Forms.ToolBar toolBarOnly;
private System.Windows.Forms.ToolBarButton toolBarButtonNew;
private System.Windows.Forms.ToolBarButton toolBarButtonOpen;
private System.Windows.Forms.Statar statusBarOnly;
private System.Windows.Forms.StatusBanel statusBarPanelTime;
private System.Windows.Forms.OpenFileDialog openFileDialog1;
private System.Windows.Forms.ImageList imageList1;
private System.Windows.Forms.FontDialog fontDialog1;
private System.Windows.Forms.Timer timer1;
private System.ComponentModel.IContainer components;
private System.Windows.Forms.SaveFileDialog saveFileDialog1;
private System.Windows.Forms.MenuItem menuItemSave;
private System.Windows.Forms.MenuItem menuItemSaveAs;
private System.Windows.Forms.StatusBarPanel statusBarPanelFileName;
private string oemText = "";
public notePad()
{
//
// Windows 窗體設計器支援所必需的
//
InitializeComponent();
//
// TODO: 在 InitializeComponent 後新增任何構造程式碼
//
}
///
/// 清理所有正在使用的資源。
///
protected overr void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows FoDesigner generated code
///
/// 設計器支援所需的方法 - 不要使用程式碼編輯器修改
/// 此方法的內容。
///
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.Res.ResourceManager resources = new System.Resources.ResourceManager(typeof(notePad));
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.mainMenu1 = new System.Windows.Forms.MainMenu();
this.menuItemFile = new System.Windows.Forms.MenuItem();
this.menuItemNew = new System.Windows.Forms.MenuItem();
this.menuItemOpen = new System.Windows.Forms.MenuItem();
this.menuItemSave = new System.Windows.Forms.MenuItem();
this.menuItemSaveAs = new System.Windows.Forms.MenuItem();
this.menuItem8 = new System.Windows.Forms.MenuItem();
this.menuItemPrint = new System.Windows.Forms.MenuItem();
this.menuItem10 = new System.Windows.Forms.MenuItem();
this.menuItemExit = new System.Windows.Forms.MenuItem();
this.menuItemEdit = new System.Windows.Forms.MenuItem();
this.menuItemOption = new System.Windows.Forms.MenuItem();
this.menuItemFont = new System.Windows.Forms.MenuItem();
this.menuItemWordWrap = new System.Windows.Forms.MenuItem();
this.menuItemHelp = new System.Windows.Forms.MenuItem();
this.menuItemAbout = new System.Windows.Forms.MenuItem();
this.toolBarOnly = new System.Windows.Forms.ToolBar();
this.toolBarButtonNew = new System.Windows.Forms.ToolBarButton();
this.toolBarButtonOpen = new System.Windows.Forms.ToolBarButton();
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
this.statusBarOnly = new System.Windows.Forms.StatusBar();
this.statusBarPanelTime = new System.Windows.Forms.StatusBarPanel();
this.statusBarPanelFileName = new System.Windows.Forms.StatusBarPanel();
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
this.fontDialog1 = new System.Windows.Forms.FontDialog();
this.timer1 = new System.Windows.Forms.Timer(this.components);
this.saveFileDialog1 = new System.Windows.Forms.SaveFileDialog();
((System.ComponentModel.ISupportInitialize)(this.statusBarPanelTime)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.statusBarPanelFileName)).BeginInit();
this.SuspendLayout();
//
// richTextBox1
//
this.richTextBox1.AutoWordion = true;
this.richTextBox1.Location = new System.Drawing.Point(1, 30);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Forceoth;
this.richTextBox1.Size = new System.Drawing.Size(556, 298);
this.richTextBox1.TabIndex = 0;
this.richTextBox1.Text = "";
this.richTextBox1.WordWrap = false;
//
// mainMenu1
//
this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
this.menuItemFile,
this.menuItemEdit,
this.menuItemOption,
this.menuItemHelp});
//
// menuItemFile
//
this.menuItemFile.Index = 0;
this.menuItemFile.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
this.menuItemNew,
this.menuItemOpen,
this.menuItemSave,
this.menuItemSaveAs,
this.menuItem8,
this.menuItemPrint,
this.menuItem10,
this.menuItemExit});
this.menuItemFile.Text = "&File";
//
// menuItemNew
//
this.menuItemNew.Index = 0;
this.menuItemNew.Text = "&New";
//
// menuItemOpen
//
this.menuItemOpen.Index = 1;
this.menuItemOpen.Text = "&Open";
this.menuItemOpen.Click += new System.EventHandler(this.menuItemOpen_Click);
//
// menuItemSave
//
this.menuItemSave.Index = 2;
this.menuItemSave.Text = "&Save";
//
// menuItemSaveAs
//
this.menuItemSaveAs.Index = 3;
this.menuItemSaveAs.Text = "Save &As...";
this.menuItemSaveAs.Click += new System.EventHandler(this.menuItemSaveAs_Click);
//
// menuItem8
//
this.menuItem8.Index = 4;
this.menuItem8.Text = "-";
//
// menuItemPrint
//
this.menuItemPrint.Index = 5;
this.menuItemPrint.Text = "&Print";
//
// menuItem10
//
this.menuItem10.Index = 6;
this.menuItem10.Text = "-";
//
// menuItemExit
//
this.menuItemExit.Index = 7;
this.menuItemExit.Text = "E&xit";
this.menuItemExit.Click += new System.EventHandler(this.menuItemExit_Click);
//
// menuItemEdit
//
this.menuItemEdit.Index = 1;
this.menuItemEdit.Text = "&Edit";
//
// menuItemOption
//
this.menuItemOption.Index = 2;
this.menuItemOption.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
this.menuItemFont,
this.menuItemWordWrap});
this.menuItemOption.Text = "&Option";
//
// menuItemFont
//
this.menuItemFont.Index = 0;
this.menuItemFont.Text = "&Font";
this.menuItemFont.Click += new System.EventHandler(this.menuItemFont_Click);
//
// menuItemWordWrap
//
this.menuItemWordWrap.Index = 1;
this.menuItemWordWrap.Text = "&WordWrap";
this.menuItemWordWrap.Click += new System.EventHandler(this.menuItemWordWrap_Click);
//
// menuItemHelp
//
this.menuItemHelp.Index = 3;
this.menuItemHelp.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
this.menuItemAbout});
this.menuItemHelp.Text = "&Help";
//
// menuItemAbout
//
this.menuItemAbout.Index = 0;
this.menuItemAbout.Text = "&About";
//
// toolBarOnly
//
this.toolBarOnly.Buttons.AddRange(new System.Windows.Forms.ToolBarButton[] {
this.toolBarButtonNew,
this.toolBarButtonOpen});
this.toolBarOnly.ButtonSize = new System.Drawing.Size(24, 24);
this.toolBarOnly.DropDownArrows = true;
this.toolBarOnly.ImageList = this.imageList1;
this.toolBarOnly.Name = "toolBarOnly";
this.toolBarOnly.ShowTool = true;
this.toolBarOnly.Size = new System.Drawing.Size(560, 27);
this.toolBarOnly.TabIndex = 1;
this.toolBarOnly.ButtonClick += new System.Windows.Forms.ToolBarButtonClickEventHandler(this.toolBarOnly_ButtonClick);
this.toolBarOnly.MouseEnter += new System.EventHandler(this.toolBarOnly_MouseEnter);
//
// toolBarButtonNew
//
this.toolBarButtonNew.ImageIndex = 0;
this.toolBarButtonNew.Text = "New";
this.toolBarButtonNew.ToolTipText = "Creat a New text";
//
// toolBarButtonOpen
//
this.toolBarButtonOpen.ImageIndex = 2;
this.toolBarButtonOpen.Text = "Open";
this.toolBarButtonOpen.ToolTipText = "Open a text";
//
// imageList1
//
this.imageList1.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
this.imageList1.ImageSize = new System.Drawing.Size(16, 16);
this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.Get("imageList1.ImageStream")));
this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
//
// statusBarOnly
//
this.statusBarOnly.AllowDrop = true;
this.statusBarOnly.Location = new System.Drawing.Point(0, 324);
this.statusBarOnly.Name = "statusBarOnly";
this.statusBarOnly.Panels.AddRange(new System.Windows.Forms.StatusBarPanel[] {
this.statusBarPanelTime,
this.statusBarPanelFileName});
this.statusBarOnly.ShowPanels = true;
this.statusBarOnly.Size = new System.Drawing.Size(560, 13);
this.statusBarOnly.TabIndex = 2;
//
// statusBarPanelTime
//
this.statusBarPanelTime.BorderStyle = System.Windows.Forms.StatusBarPanelBorderStyle.None;
this.statusBarPanelTime.Width = 50;
//
// statusBarPanelFileName
//
this.statusBarPanelFileName.Text = "Need a name";
this.statusBarPanelFileName.Width = 200;
//
// timer1
//
this.timer1.Enabled = true;
this.timer1.Interval = 1000;
this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
//
// saveFileDialog1
//
this.saveFileDialog1.FileName = "doc1";
//
// notePad
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(560, 337);
this.Controls.AddRange(new System.Windows.Forms.Control[] {
this.statusBarOnly,
this.toolBarOnly,
this.richTextBox1});
this.Menu = this.mainMenu1;
this.Name = "notePad";
this.Text = "My NotePad";
this.Closing += new System.ComponentModel.CancelEventHandler(this.notePad_Closing);
this.SizeChanged += new System.EventHandler(this.notePad_SizeChanged);
((System.ComponentModel.ISupportInitialize)(this.statusBarPanelTime)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.statusBarPanelFileName)).EndInit();
this.ResumeLayout(false);
}
#endregion
///
/// 應用程式的主入口點。
///
[STAThread]
static void Main()
{
Application.Run(new notePad());
}
private void notePad_SizeChanged(object sender, System.EventArgs e)
{
richTextBox1.Width = this.Width - 12;
richTextBox1.Height = this.Height - 100;
}
private void menuItemWordWrap_Click(object sender, System.EventArgs e)
{
if(menuItemWordWrap.Checked == true)
{
richTextBox1.WordWrap = false;
menuItemWordWrap.Checked = false;
}
else
{
richTextBox1.WordWrap = true;
menuItemWordWrap.Checked = true;
}
}
private void menuItemOpen_Click(object sender, System.EventArgs e)
{
openFileDialog1.Filter = "文字 (*.txt)|*.txt|所有檔案 (*.*)|*.*";
openFileDialog1.ShowDialog();
if(openFileDialog1.FileName.Length > 0)
{
StreamReader fileReader = new StreamReader(openFileDialog1.FileName,System.Text.Encoding.GetEncoding("gb2312"));
richTextBox1.Text = fileReader.ReadToEnd();
oemText = fileReader.ReadToEnd();
statusBarPanelFileName.Text = openFileDialog1.FileName;
fileReader.Close();
}
}
private void toolBarOnly_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
switch(toolBarOnly.Buttons.IndexOf(e.Button))
{
case 0:
//
break;
case 1:
this.menuItemOpen_Click(this,null);
break;
}
}
private void menuItemFont_Click(object sender, System.EventArgs e)
{
fontDialog1.ShowDialog();
richTextBox1.Font = fontDialog1.Font;
}
private void timer1_Tick(object sender, System.EventArgs e)
{
statusBarPanelTime.Text = DateTime.Now.ToString("hh:mm:ss");
}
private void toolBarOnly_MouseEnter(object sender, System.EventArgs e)
{
// toolBarOnly.Buttons.IndexOf.
}
private void menuItemExit_Click(object sender, System.EventArgs e)
{
this.Close();
}
private void menuItemSaveAs_Click(object sender, System.EventArgs e)
{
saveFileDialog1.Filter = "文字檔案 (*.txt)|*.txt|所有檔案 (*.*)|*.*";
saveFileDialog1.ShowDialog();
if(saveFileDialog1.FileName.Length > 0)
{
richTextBox1.SaveFile(saveFileDialog1.FileName,RichTextBoxStreamType.PlainText);
statusBarPanelFileName.Text = saveFileDialog1.FileName;
}
}
private void notePad_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
if(oemText != richTextBox1.Text)
{
DialogResult msgReturn;
msgReturn = MessageBox.Show("The text already changed , Are you saved change .","Exit",MessageBoxButtons.YesNoCancel,MessageBoxIcon.Question);
switch (msgReturn)
{
case DialogResult.Yes:
menuItemSaveAs_Click(this,null);
break;
case DialogResult.No:
//do nothing;
return;
}
}
}
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-991720/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- xml方面的的問題,請高手指教XML
- jboss問題,請各位高手指教!
- 關於j_security_check的問題 高手請指教
- 問一個小的運算問題,請高手指教!
- 請高手指教,關於Web應用程式的資源保護問題^_^Web
- 高手指教
- 有關java程式不能在linux上執行的問題,請高手指教JavaLinux
- 關於單點登入的若干問題,請高手指教
- 使用C#寫出一個簡單的記事本程式C#
- shell程式設計學習筆記(一):編寫我的第一段程式碼程式設計筆記
- 關於J2EE安全請高手指教
- jive2.1.2快取問題?各位高手,請指教!!快取
- 新手安裝red hat 9,無法進行下去,請高手指教(轉)
- ★★★敬請留意★★★:和微軟一模一樣的記事本的原始碼(2) (轉)微軟原始碼
- ★★★敬請留意★★★:和微軟一模一樣的記事本的原始碼(1) (轉)微軟原始碼
- ★★★敬請留意★★★:和微軟一模一樣的記事本的原始碼(3) (轉)微軟原始碼
- ★★★敬請留意★★★:和微軟一模一樣的記事本的原始碼(4) (轉)微軟原始碼
- ★★★敬請留意★★★:和微軟一模一樣的記事本的原始碼(5) (轉)微軟原始碼
- jpetstore的一段程式碼,請高手解釋一下什麼意思啊
- jive2.1.2快取問題?各位高手,請指教!!急快取
- 用php編寫我的第一段程式碼:hello worldPHP
- 昨天的面試題,請指教面試題
- 請高手指教,Log4j的配置檔案應該放在哪裡?
- 我用JBUILDER執行有小錯,請指教UI
- 我的第一段ionic程式碼C程式
- BMP的JDBC問題,請指教JDBC
- nosql實體的疑惑,請指教SQL
- 不懂下面struts頁面的集合是什麼時候產生的,請高手指教
- 用C#寫一個記事本五C#
- 請高手指教,EJB容器是不是在截獲一個非檢查異常時就回滾事務。
- 高手指教,關於iPlanet
- 求助:Apache的問題請高手指點(轉)Apache
- windows10的記事本在哪裡_win10開啟記事本的步驟WindowsWin10
- 高手請幫忙看看小弟寫的這個web service:Web
- 我在阿里寫程式碼學會的六件事阿里
- 程式界的高手傳奇(轉)
- 記事本介面
- QT記事本QT