⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form1.cs

📁 编辑简单的文本编辑器
💻 CS
📖 第 1 页 / 共 2 页
字号:
                    Application.Exit();
                }
                else if (asksave == DialogResult.No)
                {
                    Application.Exit();
                }
                else if (asksave == DialogResult.Cancel)
                    return;
            }
            else if (!docHasChanged)
            {
                Application.Exit();
            }
        }

        //
        //新建
        //
        private void menuFileNew_Click(object sender, EventArgs e)
        {
            this.Text = "新建文本" + (++cout);//显示子窗体
            if (docHasChanged)
            {
                string strask1;
                if (docName != "")
                    strask1 = "是否保存: " + docName + " ?";
                else
                    strask1 = "是否保存 未命名.txt ?";
                DialogResult asksave =MessageBox.Show(strask1, "退出", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning);
                if (asksave == DialogResult.Yes)
                {
                    menuFileSave_Click(sender, e);
                    this.Text = "TextEditor - 未命名.txt";
                    docName = "未命名.txt";
                    richTextBox1.Text = "";
                    docHasChanged = true;
                    docHasData = false;
                    docHasSaved = false;
                }
                else if (asksave == DialogResult.No)
                {
                    this.Text = "TextEditor - 未命名.txt";
                    docName = "未命名.txt";
                    richTextBox1.Text = "";
                    docHasChanged = true;
                    docHasData = false;
                    docHasSaved = false;
                }
            }
            else if (docHasSaved || (!docHasData))
            {
                this.Text = "TextEditor - 未命名.txt";
                docName = "未命名.txt";
                richTextBox1.Text = "";
                docHasChanged = true;
                docHasSaved = false;
                docHasData = false;
            }
        }

        //
        //颜色
        //
        private void meunFormatColor_Click(object sender, EventArgs e)
        {
            ColorDialog color = new ColorDialog();
            if (color.ShowDialog() == DialogResult.OK)
                richTextBox1.SelectionColor = color.Color;
            docHasChanged = true;
        }

        //
        //字体
        //
        private void meunFormatFont_Click(object sender, EventArgs e)
        {
            FontDialog font = new FontDialog();
            if (font.ShowDialog() == DialogResult.OK)
                richTextBox1.SelectionFont = font.Font;
            docHasChanged = true;
        }

        //
        //另存为
        //
        private void menuFileSaveAs_Click(object sender, EventArgs e)
        {
            SaveFileDialog save = new SaveFileDialog();
            save.Filter = "Text files(*.txt)|*.txt|C# source(*.cs)|*.cs|C++ source(*.cpp)|*.cpp|C source(*.c" +
                ")|*.c|All files(*.*)|*.*";
            save.InitialDirectory = "C:/";
            save.Title = "保存为";
            if (save.ShowDialog() == DialogResult.OK)
            {
                richTextBox1.SaveFile(save.FileName, RichTextBoxStreamType.PlainText);
                docName = save.FileName;
            }
            docHasData = true;
            docHasChanged = false;
            this.Text = "TextEditor - " + docName;
            docHasSaved = true;
        }

        //
        //保存
        //
        private void menuFileSave_Click(object sender, EventArgs e)
        {
            if(docHasData)
            {
                FileStream file = new FileStream(docName, FileMode.Create, FileAccess.ReadWrite);
                StreamWriter writer = new StreamWriter(file, System.Text.Encoding.GetEncoding("GB2312"));
                writer.Write(richTextBox1.Text);
                docHasChanged = false;
                writer.Close();
                file.Close();
                this.Text = "TextEditor - " + docName;
                docHasSaved = true;
            }
            else if ((!docHasData) || (!docHasSaved)||docHasChanged)
                menuFileSaveAs_Click(sender, e);
        }

        //
        //帮助主题
        //
        private void menuHelpTheme_Click(object sender, EventArgs e)
        {
            new Help().Show();
        }

        //
        //关于
        //
        private void menuHelpAbout_Click(object sender, EventArgs e)
        {
            MessageBox.Show("作者: 王成征\n\n日期: 2007年12月16日\n\n欢迎使用!请提意见:achengzeng@126.com", "关于TextEditor", MessageBoxButtons.OK, MessageBoxIcon.None);
        }

        //
        //删除
        //
        private void menuEditDelete_Click(object sender, EventArgs e)
        {
            richTextBox1.SelectedText = "";
        }

        //
        //查找
        //
        private void menuEditFind_Click(object sender, EventArgs e)
        {
            Form2 child = new Form2();
            child.Show();
            child.s1 = this.richTextBox1;
        }

        //
        //替换
        //
        private void menuEditReplace_Click(object sender, EventArgs e)
        {

            Form3 child = new Form3();
            child.Show();
            child.s1 = this.richTextBox1;
        }

        //
        //不现实工具条的文字
        //
        private void menuDontShowToolTxt_Click(object sender, EventArgs e)
        {
            menuDontShowToolTxt.Checked = true;
            menuShowToolTxt.Checked = false;
            toolBarNew.Text = "";
            toolBarOpen.Text = "";
            toolBarSave.Text = "";
            toolBarUndo.Text = "";
            toolBarSelectAll.Text = "";
            toolBarCut.Text = "";
            toolBarCopy.Text = "";
            toolBarPaste.Text = "";
            toolBarDelete.Text = "";
            toolBarFind.Text = "";
            toolBarReplace.Text = "";
            toolBarFont.Text = "";
            toolBarColor.Text = "";
            toolBarHelp.Text = "";
            toolBarAbout.Text = "";
            toolBar1.Hide();
            toolBar1.Show();
            Form1_ClientSizeChanged(sender, e);
        }

        //
        //显示工具条按钮的文字
        //
        private void menuShowToolTxt_Click(object sender, EventArgs e)
        {
            richTextBox1_Click(sender, e);
            menuDontShowToolTxt.Checked = false;
            menuShowToolTxt.Checked = true;
            toolBarNew.Text = "新建";
            toolBarOpen.Text = "打开";
            toolBarSave.Text = "保存";
            toolBarUndo.Text = "撤消";
            toolBarSelectAll.Text = "全选";
            toolBarCut.Text = "剪切";
            toolBarCopy.Text = "复制";
            toolBarPaste.Text = "粘贴";
            toolBarDelete.Text = "删除";
            toolBarFind.Text = "查找";
            toolBarReplace.Text = "替换";
            toolBarFont.Text = "字体";
            toolBarColor.Text = "颜色";
            toolBarHelp.Text = "帮助";
            toolBarAbout.Text = "关于";
            toolBar1.Hide();
            toolBar1.Show();
            Form1_ClientSizeChanged(sender, e);
        }

        //
        //自动换行
        //
        private void menuAutoNewLine_Click(object sender, EventArgs e)
        {
            if (!autoNewLine)
            {
                richTextBox1.WordWrap = true;
                menuAutoNewLine.Checked = true;
                autoNewLine = true;
            }
            else
            {
                richTextBox1.WordWrap = false;
                menuAutoNewLine.Checked = false;
                autoNewLine = false;
            }
            richTextBox1_Click(sender, e);
        }

        #endregion

        #region 其他

        //状态栏显示时间处理
        private void timer1_Tick(object sender, EventArgs e)
        {
            statusBarTime.Text = "当前时间: " + DateTime.Now.ToString();
        }

        //InputBox - 查找框
      /*  private void inputBox_Validating(object sender, InputBoxValidatingArgs e)
        {
            if (e.Text.Trim().Length == 0)
            {
                e.Cancel = true;
                e.Message = "Required";
            }
        }*/

        //RepInputBox - 替换框
      /*  private void repinputBox_Validating(object sender, RepInputBoxValidatingArgs e)
        {
            //if (e.Text.Trim().Length == 0)
            //{
            //    e.Cancel = true;
            //    e.Message = "Required";
            //}
        }*/

        #endregion

        #region 在文本框中的鼠标右键菜单

        private void rightBtnCut_Click(object sender, EventArgs e)
        {
            menuEditCut_Click(sender, e);
        }

        private void rightBtnCopy_Click(object sender, EventArgs e)
        {
            menuEditCopy_Click(sender, e);
        }

        private void rightBtnPaste_Click(object sender, EventArgs e)
        {
            menuEditPaste_Click(sender, e);
        }

        private void rightBtnDelete_Click(object sender, EventArgs e)
        {
            menuEditDelete_Click(sender, e);
        }

        private void rightBtnSelAll_Click(object sender, EventArgs e)
        {
            menuEditSelectAll_Click(sender, e);
        }

        private void rightBtnDate_Click(object sender, EventArgs e)
        {
            menuEditDate_Click(sender, e);
        }

        #endregion

        private void 红色ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            richTextBox1.BackColor = Color.Red;
            红色ToolStripMenuItem.Checked = true;
            蓝色ToolStripMenuItem.Checked = false;
            黑色ToolStripMenuItem.Checked = false;
            绿色ToolStripMenuItem.Checked = false;
            黄色ToolStripMenuItem.Checked = false;
            白色ToolStripMenuItem.Checked = false;
        }

        private void 黑色ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            richTextBox1.BackColor = Color.Black;
            红色ToolStripMenuItem.Checked = false;
            蓝色ToolStripMenuItem.Checked = false;
            黑色ToolStripMenuItem.Checked = true;
            绿色ToolStripMenuItem.Checked = false;
            黄色ToolStripMenuItem.Checked = false;
            白色ToolStripMenuItem.Checked = false;
        }

        private void 绿色ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            richTextBox1.BackColor = Color.Green;
            红色ToolStripMenuItem.Checked = false;
            蓝色ToolStripMenuItem.Checked = false;
            黑色ToolStripMenuItem.Checked = false;
            绿色ToolStripMenuItem.Checked = true;
            黄色ToolStripMenuItem.Checked = false;
            白色ToolStripMenuItem.Checked = false;
        }

        private void 蓝色ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            richTextBox1.BackColor = Color.Blue;
            红色ToolStripMenuItem.Checked = false;
            蓝色ToolStripMenuItem.Checked = true;
            黑色ToolStripMenuItem.Checked = false;
            绿色ToolStripMenuItem.Checked = false;
            黄色ToolStripMenuItem.Checked = false;
            白色ToolStripMenuItem.Checked = false;
        }

        private void 黄色ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            richTextBox1.BackColor = Color.Yellow;
            红色ToolStripMenuItem.Checked = false;
            蓝色ToolStripMenuItem.Checked = false;
            黑色ToolStripMenuItem.Checked = false;
            绿色ToolStripMenuItem.Checked = false;
            黄色ToolStripMenuItem.Checked = true;
            白色ToolStripMenuItem.Checked = false;
        }

        private void 白色ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            richTextBox1.BackColor = Color.White;
            红色ToolStripMenuItem.Checked = false;
            蓝色ToolStripMenuItem.Checked = false;
            黑色ToolStripMenuItem.Checked = false;
            绿色ToolStripMenuItem.Checked = false;
            黄色ToolStripMenuItem.Checked = false;
            白色ToolStripMenuItem.Checked = true;
        }

        private void 排列图标ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.LayoutMdi(MdiLayout.ArrangeIcons);
        }

        private void 层叠ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.LayoutMdi(MdiLayout.ArrangeIcons);
        }

        private void 水平平铺ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.LayoutMdi(MdiLayout.TileHorizontal);
        }

        private void 垂直平铺ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.LayoutMdi(MdiLayout.TileHorizontal);
        }

        private void 关闭所有子窗口ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            int i;
            for (i = 0; i <= this.MdiChildren.Length - 1; i++)
                this.MdiChildren[i].Close();
        }

        private void 窗口列表ToolStripMenuItem_Click(object sender, EventArgs e)
        {

        }

    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -