winform 对话框控件,打印控件

时间:2022-09-18 15:00:52

1、文件对话框(FileDialog)

它又常用到两个:

打开文件对话框(OpenFileDialog)

保存文件对话框(SaveFileDialog)

2、字体对话框(FontDialog)

3、颜色对话框(ColorDialog)

4、打开文件夹对话框 FolderBrowserDialog

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;//引用流通道,输入输出读写通道 namespace duihuakuang控件
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//dialog 对话,会话,对话框
//ShowDialog 将窗体显示为具有指定所有者模式的对话框
//DialogResult 指定标识符以指示对话框的返回值
//floder 文件夹,文书夹
//Browser 浏览器
//file 文件;档案;文件夹
//stream 流媒体类
private void 字体颜色ToolStripMenuItem_Click(object sender, EventArgs e)
{
DialogResult dr= colorDialog1.ShowDialog();//显示为调色板对话框
if (dr == DialogResult.OK)//如果用户点击的是确定才赋值
{
textBox1.ForeColor = colorDialog1.Color;//textbox1中的前景色
}
} private void 选择文件夹ToolStripMenuItem_Click(object sender, EventArgs e)
{
folderBrowserDialog1.ShowDialog();//显示为文件夹浏览器样式
textBox1.Text = folderBrowserDialog1.SelectedPath;//将选择路径里的内容显示在文本框
//绝对路径,相对路径 } private void 字体设置ToolStripMenuItem_Click(object sender, EventArgs e)
{
fontDialog1.ShowColor = true;//开启字体设置对话框里的颜色
fontDialog1.ShowDialog();//开启字体设置对话框
textBox1.Font = fontDialog1.Font;//文本框字体设置引用字体设置
textBox1.ForeColor = fontDialog1.Color;//文本框颜色引用字体设置对话框里的颜色
} private string lujing;//定义一个变量lujing来存放文件存放的路径 private void 保存SToolStripMenuItem_Click(object sender, EventArgs e)
{ if (lujing == "")//如果没有该保存路径
{
saveFileDialog1.FileName = "新建文件.txt";//设置保存名称及后缀文件类型
DialogResult dr = saveFileDialog1.ShowDialog();//设置一个对话框变量dr接收显示保存对话框的内容
if (dr == DialogResult.OK)//如果用户点击确定
{
//lujing = saveFileDialog1.FileName;//定义一个变量来接收保存文件的名称
StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
}
}
else
{
StreamWriter sw = new StreamWriter(lujing);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
} } private void 新建NToolStripMenuItem_Click(object sender, EventArgs e)
{
if(this.textBox1.Text.Length>)//如果打开记事本中有输入得东西
{
DialogResult dr = MessageBox.Show("是否进行保存","保存对话框",MessageBoxButtons.YesNo);
//弹出是否保存的对话框
if(dr==DialogResult.OK)//用户点击确定
{
if (lujing == "")//如果没有该保存路径
{
saveFileDialog1.FileName = "新建文件.txt";//设置保存名称及后缀文件类型
DialogResult dr1 = saveFileDialog1.ShowDialog();//设置一个对话框变量dr接收显示保存对话框的内容
if (dr1 == DialogResult.OK)//如果用户点击确定
{
//lujing = saveFileDialog1.FileName;//定义一个变量来接收保存文件的名称
StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
}
}
else
{
StreamWriter sw = new StreamWriter(lujing);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
}
} }
lujing = null;//执行完新建将路径变为空,因为是新建的文本是不会有路径的.
this.textBox1.Text = ""; //将文本框清空
} private void 打开OToolStripMenuItem_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "文本文件|*.txt|所有文件|*.*";//筛选打开文件类型
DialogResult dr = openFileDialog1.ShowDialog();//设置一个对话框变量接收
if (dr == DialogResult.OK)//点击确定按钮
{ lujing = openFileDialog1.FileName;//将文件路径的值赋给lujing这个变量
StreamReader sr = new StreamReader(openFileDialog1.FileName,UnicodeEncoding.GetEncoding("GB2312"));//初始化读取流媒体类,并将打开的文件名称,及当前编码形式
//相当于用水管连接两个水龙头,打开开关数据进行读写操作
textBox1.Text = sr.ReadToEnd();
sr.Close();
}
//第二种方法
//OpenFileDialog ofd = new OpenFileDialog();//初始化打开文件夹这个类,并定义一个变量ofd
//ofd.Title = "打开";
//ofd.Filter = "文本文件|*.txt|所有文件|*.*";//设置打开文件类型对话框中文件类型,文本文件txt或者所有文件
//if (ofd.ShowDialog() == DialogResult.OK)//如果用户点击打开文件对话框
//{
// lujing = saveFileDialog1.FileName;
// FileStream fs = new FileStream(ofd.FileName, FileMode.Open, FileAccess.Read, FileShare.Read);
// //调用以文件为主的stream类,既支持同步操作又支持异步操作。将开启的权限赋给变量fs
// //ofd.FileName 获取文件名称及路径
// //FileMode.Open 打开选定文件
// //FileAccess.Read 设置文件操作为读取
// //FileShare.Read 允许随后打开文件的读取
// StreamReader sr = new StreamReader(fs, Encoding.Default);//读取流媒体初始化,将fs的值及当前字符编码赋值给sr
// textBox1.Text = sr.ReadToEnd();//用TextBox1接收读取到的内容
// sr.Close();//关闭读取的流媒体通道
// sr.Close();//关闭以文件操作为主的流媒体通道
//}
} private void 另存为AToolStripMenuItem_Click(object sender, EventArgs e)
{ saveFileDialog1.FileName = "新建为文件.txt";//设置保存名称及后缀文件类型
saveFileDialog1.ShowDialog();
StreamWriter sw = new StreamWriter(saveFileDialog1.FileName);//开启流通道
sw.Write(textBox1.Text);//保存编辑文档
sw.Close();//关闭流通道
}
}
}
//窗体移动API
[DllImport("user32.dll")]
public static extern bool ReleaseCapture();
[DllImport("user32.dll")]
public static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int IParam);
public const int WM_SYSCOMMAND = 0x0112;
public const int SC_MOVE = 0xF010;
public const int HTCAPTION = 0x0002;
[DllImport("user32")]
private static extern int SendMessage(IntPtr hwnd, int wMsg, int wParam, IntPtr lParam);
private const int WM_SETREDRAW = 0xB; private void Form1_MouseDown(object sender, MouseEventArgs e)
{
if (this.WindowState == FormWindowState.Normal)
{
ReleaseCapture();
SendMessage(this.Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, );
}
}

窗体移动API

     //窗体阴影API
const int CS_DropSHADOW = 0x20000;
const int GCL_STYLE = (-);
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern int SetClassLong(IntPtr hwnd, int nIndex, int dwNewLong);
[DllImport("user32.dll", CharSet = CharSet.Auto)]
public static extern int GetClassLong(IntPtr hwnd, int nIndex); public Form1()
{
InitializeComponent();
SetClassLong(this.Handle, GCL_STYLE, GetClassLong(this.Handle, GCL_STYLE) | CS_DropSHADOW);
}

窗体阴影API

打印控件

printDocument 设置打印对象的各项初始属性,需要首先设置,面向对象的操作

打印控件分三步

1、打印页面设置 pageSetupDialog

2、打印预览 printPreviewControl  打印预览控件,不经常用

printPreviewDialog  打印预览对话框,常用

3、打印       printDialog

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace dayyin
{
public partial class Form1 : Form
{
//打印步骤 //打印设置
//打印预览
//打印
public Form1()
{
InitializeComponent();
} private void 页面设置ToolStripMenuItem_Click(object sender, EventArgs e)
{
pageSetupDialog1.Document = printDocument1;//将打印设置的指向打印对象1
pageSetupDialog1.ShowDialog();//弹出打印设置对话框
} private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
//首先要设置打印对象,类似于画板
Font f=new Font("宋体",);//设置字体
Brush b=new SolidBrush(Color.Black);//设置画刷样式
PointF p = new PointF(,);//定义坐标点
e.Graphics.DrawString(textBox1.Text,f,b,p);//设置绘画参数,要绘制的字符串,字体,格式刷,坐标
//System.Drawing.Printing 命名空间提供与打印相关的服务。
//PrintPageEventArgs为 PrintPage 事件提供数据。
//Graphics 图形,图形,显卡
//DrawString 绘制字符串形式
} private void menuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{ } private void 打印预览VToolStripMenuItem_Click(object sender, EventArgs e)
{
//printPreviewControl1.Document = printDocument1;//打印预览控件
printPreviewDialog1.Document = printDocument1;//打印对话框
printPreviewDialog1.ShowDialog();
} private void 打印PToolStripMenuItem_Click(object sender, EventArgs e)
{
printDialog1.Document = printDocument1;//指向打印内容
printDialog1.ShowDialog();//显示打印对话框
} }
}

winform 对话框控件,打印控件的更多相关文章

  1. wpf 深度复制控件,打印控件

    原文:wpf 深度复制控件,打印控件 <Window x:Class="WpfApp2.MainWindow" xmlns="http://schemas.micr ...

  2. winform对话框控件、打印控件

    对话框控件: ColorDialog:颜色选择对话框,让用户自行选择一种颜色,使用方法类似FontDialog FontDialog:字体选择对话框,让用户自行选择一种字体(也可以选择字体颜色,需要在 ...

  3. winform 对话框,保存,另存为,还有打印控件

    学习的对话框的种类: 1.打开文件对话框(OpenFileDialog) 2.保存文件对话框(SaveFileDialog) 3.字体对话框(FontDialog) 4.颜色对话框(ColorDial ...

  4. 【2017-05-03】winform打印控件、事件对象和事件数据、MDI窗体容器

    一.打印控件 第一步先把打印对象搞出来. - printDocument    打印对象(将要打印的内容放到该对象里,从该对象里取内容打印) 设置他的PrintPage事件(对于要打印的每一页触发一次 ...

  5. C&num; ie通过打印控件点打印,总是弹出另存为xps的对话框

    用的是lodop打印控件,点打印后,总是弹出另存为xps的对话框,后来在网上查到可能是把windows自带的Microsoft XPS Document Writer设为默认打印机的原因. 但现在没有 ...

  6. DevExpress Winform 通用控件打印方法(允许可自定义边距) z

    DevExpress Winform 通用控件打印方法,包括gridcontrol,treelist,pivotGridControl,ChartControl,LayoutControl...(所有 ...

  7. 网页WEB打印控件制作-开放源码

    在WEB系统中,打印的确是比较烦人的问题,如果我们能制作一个属于自己的自定义的打印插件,那么我们在后续自定义打印的时候能随心所欲的控制打印,这样的效果对于程序员来说是非常开心的一件事件,本文将自己开发 ...

  8. 基于MVC4&plus;EasyUI的Web开发框架经验总结(16)--使用云打印控件C-Lodop打印页面或套打报关运单信息

    在最新的MVC4+EasyUI的Web开发框架里面,我整合了关于网购运单处理的一个模块,其中整合了客户导单.运单合并.到货扫描.扣仓.出仓.查询等各个模块的操作,里面涉及到一些运单套打的操作,不过由于 ...

  9. &lbrack;2014&period;01&period;27&rsqb;wfPrintOcx 票据打印控件 v5&period;3

    支持选择打印机,并自动记忆选择的打印机. 适合打印各类票据格式. 支持画正方形.长方形.圆形.椭圆.横线.竖线.HTTP图片. 支持数字金额转换成中文大写金额. 可以设置固定宽度的文字自动换行. 组件 ...

随机推荐

  1. Asp&period;Net WebService 使用后来管理系统对接口方法进行公开控制

    思路: 1.需要找一个访问Webservice的统一入口,刚开始进入了一个误区,以为WebService是单独的运行程序,后来经朋友提醒,其实它也是通过http请求在asp.net framework ...

  2. Mako

    from:  http://www.yeolar.com/note/2012/08/26/mako-usage/ Python模板库Mako的用法(选译自官方文档) Yeolar 2012-08-26 ...

  3. SQL1092N The requested command or operation failed because the user ID does not have the authority to perform the requested command or operation&period;

    1.前一天安装号db2后,做了如下处理: ************************************************************ 修改 /etc/sudoers 文件 ...

  4. Linux APP源码级编译安装

    首先需要了解下tar包. 以下文章作出解释了: http://www.cnblogs.com/laipDIDI/articles/2214270.html http://baike.baidu.com ...

  5. 尺度空间(Scale space)理论

    尺度空间方法的基本思想是:在视觉信息处理模型中引入一个被视为尺度的參数,通过连续变化尺度參数获得不同尺度下的视觉处理信息,然后综合这些信息以深入地挖掘图像的本质特征.尺度空间方法将传统的单尺度视觉信息 ...

  6. 【转】简述什么是Web服务(Web Service)技术?

          Web Service 是在 Internet 上进行分布式计算的基本构造块,是组件对象技术在 Internet 中的延伸,是一种部署在Web 上的组件.它融合了以组件为基础的开发模式和 ...

  7. Big Data Ingestion and streaming product introduction

    Flume Flume isdistributed system for collecting log data from many sources, aggregating it,and writi ...

  8. &lbrack;Redis&rsqb;Redis高级特性的配置及使用

    ---------------------------------------------------------------------------- [Redis安全性] 一 . 默认我们进入Re ...

  9. JMeter&&num;160&semi;配置元件之计数器Counter

    配置元件之计数器Counter   by:授客 QQ:1033553122 测试环境 apache-jmeter-2.13 1.   计数器简介 允许用户创建一个在线程组范围之内都可以被引用的计数器. ...

  10. Windows Services&lpar;NT&rpar;

    本文主要记录什么是Windows Service,及其主要组成?并通过一个列子来创建一个Windows Services,同时,记录几个在查资料碰到的问题. Windows Services全文简称N ...