Winform容器标签 打印标签 对话框控件
一、容器标签
布局:
Anchor:锁定位置,指定与窗口容器的边缘位置,会随着窗口大小的改变而改变;
Dock:填充窗口的位置。一般与容器标签同时使用。
1、Panel:对控件进行分组。可以独立布局,里面可以放其他控件和容器(包括自身)再进行布局。
2、FlowLayOutPanel:流式布局标签。从左到右。宽度不够,自动换行。
3、GroupBox:分组容器。拥有panel全部属性,比panel多了个标题和边框样式。
4、Tabcontrol:选项卡容器。
5、SplitContainer:二分区容器。将容器分为两部分,这两个分部分,用户可以随意调节其大小。选中整体容器,可以修改Oriention属性来调节分割的区域是水平的还是垂直的。
6、TableLayout:表格容器。每个表格只能放一个控件,可以先放一个容器,再放多个控件。
二、打印标签
把要打印的文字放在一个对象a(printDocument)上,打印的操作就是对a的操作。
PageSetupDialog:打印设置对话框
PrintPreviewControl:打印预览控件
PrintPreviewDialog:打印预览对话框
PrintDialog:打印对话框
DialogResult dr = printDialog1.ShowDialog();
if (dr == DialogResult.OK)//如果用户点击的是确定按钮,那么执行打印
{
printDocument1.Print();
}
DialogResult是一个可被实例化的枚举类,用来接收用户在对话框中的操作

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Drawing;//设置printDocument时需要这个命名空间 namespace WindowsFormsApplication20
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button3_Click(object sender, EventArgs e)
{ } private void groupBox1_Enter(object sender, EventArgs e)
{ } private void radioButton1_CheckedChanged(object sender, EventArgs e)
{ } private void radioButton2_CheckedChanged(object sender, EventArgs e)
{ } private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{ } private void 打印设置toolStripMenuItem1_Click(object sender, EventArgs e)//打印设置
{
pageSetupDialog1.Document = printDocument1;//将盛有打印内容的对象给设置窗口
pageSetupDialog1.ShowDialog();//显示打印设置窗口
} private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
Font f=new Font("黑体",);
SolidBrush s=new SolidBrush(Color.Blue);
e.Graphics.DrawString(textBox1.Text,f,s,,);//设置盛有要打印内容的对象 } private void toolStripMenuItem2_Click(object sender, EventArgs e)//打印预览
{
printPreviewControl1.Document = printDocument1;//将要打印的对象放到预览上
} private void 新建NToolStripMenuItem_Click(object sender, EventArgs e)
{ } private void 打开OToolStripMenuItem_Click(object sender, EventArgs e)
{ } private void 打印PToolStripMenuItem_Click(object sender, EventArgs e)
{
printDialog1.Document = printDocument1;//将盛有打印内容的对象给打印窗口
DialogResult s= printDialog1.ShowDialog();//接受打印结果
if (s == DialogResult.OK)//如果选择确定
{
printDocument1.Print();
}
}
}
}
三、 对话框控件
1、colorDialog - 颜色选择对话框
(1)将此控件显示出来 DialogResult a = colorDialog1.ShowDialog()
(2)将文本内的文字的颜色选为选中的颜色 textBox1.ForeColor = colorDialog1.Color;
2、olderBrowserDialog - 文件路径选择对话框
(1)将此控件显示出来DialogResult a= folderBrowserDialog1.ShowDialog();
(2)将路径显示在某个区域的文本内 toolStripStatusLabel1.Text = folderBrowserDialog1.SelectedPath;
3、fontDialog - 字体选择对话框
操作跟colorDialog一样。
区别是能在fontDialog内设置字体颜色。/在FontDialoge1的ShowColor属性改为True,然后再进行设置。
4、openFileDialog - 打开文件对话框
(1)先设置好需要打开的文件的类型(或者后缀),如下:
openFileDialog1.Filter = "文本文件.txt|*.txt|视频文件|*.avi|所有文件|*.*";
(2)打开窗口,并且接收所选项DialogResult a= openFileDialog1.ShowDialog();
(3)在状态栏显示路径 toolStripStatusLabel1.Text = openFileDialog1.FileName;。(此步骤可有可无)
(4)用流(即StreamReader需要引用命名空间IO)接收路径上的文件并进行解码。 StreamReader s = new StreamReader(openFileDialog1.FileName,System.Text.Encoding.Default);
(5)对已经解码的文件进行读取,赋值到TextBox1中去!textBox1.Text = s.ReadToEnd();
(6)关闭流s.Close();
5、saveFileDialog - 保存文件对话框
(1)保存前保证文件不是空文件。 saveFileDialog1.FileName = "新建文本文件.txt";
(2)打开窗口,并且接收 DialogResult a = saveFileDialog1.ShowDialog();
(3)状态栏显示路径(此步骤可有可无)toolStripStatusLabel1.Text = saveFileDialog1.FileName;
(4)用StreamReader接收文件,程序自动解码,不用写解码党法StreamWriter ss = new StreamWriter(saveFileDialog1.FileName);
(5)将TextBox1的内容赋值到保存的文件中去ss.Write(textBox1.Text);
(6)必须关闭流ss.Close();

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace WindowsFormsApplication22
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void textBox1_TextChanged(object sender, EventArgs e)
{ } private void 帮助HToolStripMenuItem_Click(object sender, EventArgs e)
{ } private void 内容CToolStripMenuItem_Click(object sender, EventArgs e)//修改字体的颜色
{ DialogResult a = colorDialog1.ShowDialog();//窗体出现并且接收
if (a == DialogResult.OK)
{
textBox1.ForeColor = colorDialog1.Color;//文本框的字体颜色
toolStripStatusLabel1.ForeColor = colorDialog1.Color;//状态栏的颜色 }
} private void 索引IToolStripMenuItem_Click(object sender, EventArgs e)//修改字体的样式
{
DialogResult a = fontDialog1.ShowDialog();//窗体出现并且接收
if (a == DialogResult.OK)
{
textBox1.Font = fontDialog1.Font;//设置字体样式
textBox1.ForeColor = fontDialog1.Color;//在FontDialoge1的ShowColor属性改为True,再进行此步骤,设置字的颜色。
} } private void 搜索SToolStripMenuItem_Click(object sender, EventArgs e)//文件路径选择对话框
{
DialogResult a= folderBrowserDialog1.ShowDialog();
if (a == DialogResult.OK)
{
toolStripStatusLabel1.Text = folderBrowserDialog1.SelectedPath;
}
} private void 打开OToolStripMenuItem_Click(object sender, EventArgs e)
{
openFileDialog1.Filter = "文本文件.txt|*.txt|视频文件|*.avi|所有文件|*.*";//查看所需要的格式文件,格式:客户看的|计算机识别的。
DialogResult a= openFileDialog1.ShowDialog();//打开窗口,并且接收
if (a == DialogResult.OK)
{ toolStripStatusLabel1.Text = openFileDialog1.FileName;//状态栏显示路径
//StreamReader需要引用新的命名空间IO。
//用StreamReader接收文件,并且进行解码。
StreamReader s = new StreamReader(openFileDialog1.FileName,System.Text.Encoding.Default); textBox1.Text = s.ReadToEnd();//对已经解码的文件进行读取,赋值到TextBox1中去!
s.Close();//必须关闭流(StreamReader)
} } private void 退出XToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Close();
} private void 保存SToolStripMenuItem_Click(object sender, EventArgs e)
{
saveFileDialog1.FileName = "新建文本文件.txt";//保证不是空文件
DialogResult a = saveFileDialog1.ShowDialog();//打开窗口,并且接收
if (a == DialogResult.OK)
{
toolStripStatusLabel1.Text = saveFileDialog1.FileName;//状态栏显示路径
StreamWriter ss = new StreamWriter(saveFileDialog1.FileName);//用StreamReader接收文件,程序自动解码,不用写解码党法
ss.Write(textBox1.Text);//将TextBox1的内容赋值到保存的文件中去
ss.Close();//必须关闭流
} } }
}
完!!
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
绝对路径:带盘符的 G:\0720\...
相对路径:根据你当前程序的目录下,找到某个文件夹 /css/css1.css
流:IO
StreamReader - 读取流 sr.ReadToEnd();
StreamWriter - 输出流 sw.Write(要输出的内容);
Winform容器标签 打印标签 对话框控件的更多相关文章
- Winform 五种常用对话框控件的简单使用
OpenFileDialog(打开文件对话框)FolderBrowserDialog(浏览文件夹对话框)SaveFileDialog(保存文件对话框)ColorDialog(颜色选择对话框)FontD ...
- WinForm 布局,容器、打印和对话框控件
今天,我主要学习了容器控件.打印控件.对话框控件. 在正式进行今天的内容之前,首先补充了布局的两个属性:Anchor:锁定位置,Dock:填充位置,一般与容器控件配合使用. 之后,我学习了第一部分内容 ...
- 【2017-05-02】winform弹出警告框是否进行增删改操作、记事本制作、对话框控件和输出输入流
一.winform弹出警告框是否进行增删改操作 第一个参数是弹出窗体显示的内容,第二个参数是标题,第三个参数是该弹窗包含确定和取消按钮. 返回的是一个枚举类接收一下. 再进行判断,如果点的是确定按钮, ...
- winform对话框控件、打印控件
对话框控件: ColorDialog:颜色选择对话框,让用户自行选择一种颜色,使用方法类似FontDialog FontDialog:字体选择对话框,让用户自行选择一种字体(也可以选择字体颜色,需要在 ...
- 在Winform界面使用自定义用户控件及TabelPanel和StackPanel布局控件
在很多时候,我们做一些非常规化的界面的时候,往往需要创建一些用户控件,在其中绘制好一些基础的界面块,作为后续重复使用的一个单元,用户控件同时也可以封装处理一些简单的逻辑.在开发Winform各种类型项 ...
- 回调函数中使用MFC类的成员或对话框控件的简单方法
在MFC的很多程序中,常常需要在回调函数中调用MFC类的类成员变量.类成员函数,亦或者对话框控件的句柄.由于回调函数是基于C编程的Windows SDK的技术,而类成员又有this指针客观条件限制.. ...
- MFC编程入门之十(对话框:设置对话框控件的Tab顺序)
前面几节为大家演示了加法计算器程序完整的编写过程,本节主要讲对话框上控件的Tab顺序如何调整. 上一讲为"计算"按钮添加了消息处理函数后,加法计算器已经能够进行浮点数的加法运算.但 ...
- WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用
WinForm界面开发之布局控件"WeifenLuo.WinFormsUI.Docking"的使用 转自:http://www.cnblogs.com/wuhuacong/arch ...
- Android 在布局容器中动态添加控件
这里,通过一个小demo,就可以掌握在布局容器中动态添加控件,以动态添加Button控件为例,添加其他控件同样道理. 1.addView 添加控件到布局容器 2.removeView 在布局容器中删掉 ...
随机推荐
- ACM常用算法及练习(1)
ACM常用算法及练习 第一阶段:练经典常用算法,下面的每个算法给我打上十到二十遍,同时自己精简代码,因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打出来. 1.最短 ...
- C# 多线程 lock 实例
class Program { static void Main(string[] args) { //在t1线程中调用LockMe,并将deadlock设为true(将出现死锁) int i = 1 ...
- 取客户的银行帐号SQL
SELECT ibybanks.bank_name, --银行 ibybanks.bank_branch_name, --分行 ibybanks.bank_account_num_electronic ...
- Dreamweaver 时间轴如何打开
因为下午要辅导几个调皮捣蛋的小孩HTML, 什么能让他们感觉又简单又好玩而起又能提高他们的兴趣呢?DW中设置浮动广告吧! 想好了,动手去做.DwearmWeaver里面居然没了时间轴, 度 ...
- js获取单选框radio的值
遇到一个js获取radio值的问题,原来根据frm.type.value取到的值在ie下是空值 解决办法:type为每个radio的值 var chkObjs=document.getElements ...
- 嵌套错误Inline markup blocks (@<p>Content</p>) cannot be nested. Only one level of inline markup is allowed
例子: @{Html.Telerik().Splitter().Name("MainSplitter") .Orientation(SplitterOrientation.Vert ...
- viewpager+fragment+HorizontalScrollView
xml布局 <RelativeLayout android:id="@+id/rl_column" android:layout_width=&q ...
- android 学习随笔二十(多媒体编程 )
1.图片处理 加载大图片 图片大小的计算 图片大小 = 图片的总像素 * 每个像素占用的大小 * 单色图:每个像素占用1/8个字节* 16色图:每个像素占用1/2个字节* 256色图:每个像素占用1个 ...
- JAVA学习方法
我觉得要想学好的话,首先,你得会用,能玩的起来,然后才会慢慢激发你的兴趣,它为何这么用?就这样一步一步的去探索,不断地积累,总结.编程讲究的是思维,死记硬背是没有意义的,想学好编程就一个字:敲,俩字 ...
- OSAL
1. CC254x的软件基于OSAL架构 2. OSAL并非一个真的操作系统, 而只是让软件设立一个事件的执行方法(setup excution of events) 3. 每一个子系统都在OSAL的 ...