2017年11月27日 C#MDI窗体创建记事本打印记事本查找、自动换行

本文主要是介绍2017年11月27日 C#MDI窗体创建记事本打印记事本查找、自动换行,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

MDI窗体第一个父窗体

把属性里的IsMdiContainer设置为true就可以了

父窗体连接子窗体


//
创建一个新的类,用来连接别的窗体,并且别的窗体为唯一窗体
List<Form> F = new List<Form>();private void opendao(Form f){Form F1 = null;bool isopen = false;foreach(Form gf in F){gf.Hide();if(gf.Name == f.Name){isopen = true;F1 = gf;}}if (isopen){f.Close();F1.Show();}else{f.MdiParent = this;f.WindowState = FormWindowState.Maximized;f.Parent = panel1;f.FormBorderStyle = FormBorderStyle.None;f.Show();F.Add(f);}}

第一个按钮的连接或者别的也可以

       
//连接到第二个窗口private void button1_Click(object sender, EventArgs e){Form2 f2 = new Form2();f2.Name = "1";opendao(f2);}

第二个按钮连接或者别的也可以

//连接到第二个窗口   private void button2_Click(object sender, EventArgs e){Form3 f3 = new Form3();f3.Name = "2";opendao(f3);}

注:可以多个窗体连接只显示在父窗体里

 

记事本页面设置

 private void toolStripMenuItem1_Click(object sender, EventArgs e){pageSetupDialog1.Document = printDocument1;DialogResult dr = pageSetupDialog1.ShowDialog();if (dr == DialogResult.OK){}}

记事本打印

//注:第一个代码为绘画,将字符串绘画,重要!private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e){string s = textBox1.Text;Font f = new System.Drawing.Font("微软雅黑", 25.5f);Brush b = new SolidBrush(Color.Red);e.Graphics.DrawString(s, f, b, 20, 20);}//打印private void 打印PToolStripMenuItem_Click(object sender, EventArgs e){printDialog1.Document = printDocument1;DialogResult dr = printDialog1.ShowDialog();if (dr == DialogResult.OK){printDocument1.Print();}}

记事本打印预览

        private void 打印预览VToolStripMenuItem_Click(object sender, EventArgs e){printPreviewDialog1.Document = printDocument1;printPreviewDialog1.ShowDialog();}

记事本自动换行

  private void 自动换行ToolStripMenuItem_Click(object sender, EventArgs e){if (textBox1.WordWrap){//不自动换行textBox1.WordWrap = false;textBox1.ScrollBars = ScrollBars.Both;自动换行ToolStripMenuItem.Checked = false;}else{//自动换行textBox1.WordWrap = true;textBox1.ScrollBars = ScrollBars.Vertical;自动换行ToolStripMenuItem.Checked = true;}}

记事本新窗体查找

   
//此为第二个窗口的设置
         Form1 F1;public Form2(Form1 f1){InitializeComponent();F1 = f1;}int a = 0;private void button1_Click(object sender, EventArgs e){string s = textBox1.Text;a = F1.textBox1.Text.IndexOf(s, a + 1);if (a != -1){F1.textBox1.Select(a, s.Length);F1.textBox1.Focus();}else{MessageBox.Show("无匹配项!");}}
//此为第一个窗口使用private void 查找ToolStripMenuItem_Click(object sender, EventArgs e){Form2 f2 = new Form2(this);f2.Owner = this;f2.Show();}

 

转载于:https://www.cnblogs.com/zJuevers/p/7905599.html

这篇关于2017年11月27日 C#MDI窗体创建记事本打印记事本查找、自动换行的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/605666

相关文章

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

一文解析C#中的StringSplitOptions枚举

《一文解析C#中的StringSplitOptions枚举》StringSplitOptions是C#中的一个枚举类型,用于控制string.Split()方法分割字符串时的行为,核心作用是处理分割后... 目录C#的StringSplitOptions枚举1.StringSplitOptions枚举的常用

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

C#自动化实现检测并删除PDF文件中的空白页面

《C#自动化实现检测并删除PDF文件中的空白页面》PDF文档在日常工作和生活中扮演着重要的角色,本文将深入探讨如何使用C#编程语言,结合强大的PDF处理库,自动化地检测并删除PDF文件中的空白页面,感... 目录理解PDF空白页的定义与挑战引入Spire.PDF for .NET库核心实现:检测并删除空白页

JAVA实现Token自动续期机制的示例代码

《JAVA实现Token自动续期机制的示例代码》本文主要介绍了JAVA实现Token自动续期机制的示例代码,通过动态调整会话生命周期平衡安全性与用户体验,解决固定有效期Token带来的风险与不便,感兴... 目录1. 固定有效期Token的内在局限性2. 自动续期机制:兼顾安全与体验的解决方案3. 总结PS

C#利用Free Spire.XLS for .NET复制Excel工作表

《C#利用FreeSpire.XLSfor.NET复制Excel工作表》在日常的.NET开发中,我们经常需要操作Excel文件,本文将详细介绍C#如何使用FreeSpire.XLSfor.NET... 目录1. 环境准备2. 核心功能3. android示例代码3.1 在同一工作簿内复制工作表3.2 在不同

C#中通过Response.Headers设置自定义参数的代码示例

《C#中通过Response.Headers设置自定义参数的代码示例》:本文主要介绍C#中通过Response.Headers设置自定义响应头的方法,涵盖基础添加、安全校验、生产实践及调试技巧,强... 目录一、基础设置方法1. 直接添加自定义头2. 批量设置模式二、高级配置技巧1. 安全校验机制2. 类型

C#使用iText获取PDF的trailer数据的代码示例

《C#使用iText获取PDF的trailer数据的代码示例》开发程序debug的时候,看到了PDF有个trailer数据,挺有意思,于是考虑用代码把它读出来,那么就用到我们常用的iText框架了,所... 目录引言iText 核心概念C# 代码示例步骤 1: 确保已安装 iText步骤 2: C# 代码程