Winform常用的一些功能收集(持续更新)
#region progressBar实时显示进度
private void button1_Click(object sender, EventArgs e)
{
int i = 10000;
progressBar1.Minimum = 0;
progressBar1.Maximum = i;
for (int k = 0; k < i; k++)
{
progressBar1.Value += 1;
Application.DoEvents(); //label1实时显示,而非处理完成后再显示
label1.Text = progressBar1.Value.ToString() ;
}
}
#endregion #region 打开文件选择对话框
private void menuFileLoad_Click(object sender, EventArgs e)
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Title = "Open Photo";
dlg.Filter = "jpg files(*.jpg)|*.jpg|All files(*.*)|*.*";
if (dlg.ShowDialog() == DialogResult.OK)
{
try
{
pbxPhoto.Image = new Bitmap(dlg.OpenFile());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
} }
dlg.Dispose();
}
#endregion #region 菜单选中或可选
private void menuImage_DropDownOpening(object sender, EventArgs e)
{
ProcessImageOpening(sender as ToolStripDropDownItem);
} private void ProcessImageOpening(ToolStripDropDownItem parent)
{
if (parent != null)
{
string enumval = pbxPhoto.SizeMode.ToString();
foreach (ToolStripMenuItem item in parent.DropDownItems)
{
item.Enabled = (pbxPhoto.Image != null);
item.Checked = item.Tag.Equals(enumval);
}
}
}
#endregion
#region Timer控件定时操作
private void button3_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
timer1.Interval = 1000;//1秒1次
timer1.Tick += new EventHandler(tmr_Tick);
timer1.Start();
} private void tmr_Tick(object sender, EventArgs e)
{
//到达设定时间后的事件
label1.Text = DateTime.Now.ToString() + "执行了";
} private void button4_Click(object sender, EventArgs e)
{
timer1.Enabled = false;
}
#endregion
//ListView新增列
listView1.Columns.Add("年龄", 100, HorizontalAlignment.Center);
listView1.Columns.Add("班级", 80, HorizontalAlignment.Center);
listView1.Columns.Add("性别", 40, HorizontalAlignment.Center);
listView1.Columns.Add("职业", 100, HorizontalAlignment.Center);
button5.Enabled = false; //ListView新增行 批量更新防闪烁
listView1.BeginUpdate();
listView1.Items.Add("row1", "张三", 0);
listView1.Items["row1"].SubItems.Add("21");
listView1.Items["row1"].SubItems.Add("98001");
listView1.Items["row1"].SubItems.Add("男");
listView1.Items["row1"].SubItems.Add("学生"); listView1.Items.Add("row2", "李四", 0);
listView1.Items["row2"].SubItems.Add("22");
listView1.Items["row2"].SubItems.Add("98002");
listView1.Items["row2"].SubItems.Add("女");
listView1.Items["row2"].SubItems.Add("教师"); listView1.Items.Add("row3", "王五", 0);
listView1.Items["row3"].SubItems.Add("23");
listView1.Items["row3"].SubItems.Add("98003");
listView1.Items["row3"].SubItems.Add("男");
listView1.Items["row3"].SubItems.Add("工程师"); listView1.Items.Add("row4", "赵六", 0);
listView1.Items["row4"].SubItems.Add("24");
listView1.Items["row4"].SubItems.Add("98004");
listView1.Items["row4"].SubItems.Add("女");
listView1.Items["row4"].SubItems.Add("公务员");
listView1.EndUpdate(); //设置ListView属性
listView1.GridLines = true;
listView1.View = View.Details;
listView1.LabelEdit = false;
listView1.HeaderStyle = ColumnHeaderStyle.Clickable; //更改行颜色
for (int i = 0; i < listView1.Items.Count; i++)
{
if (i % 2==0)
{
listView1.Items[i].BackColor = Color.Gray;
}
} listView1.Items.Clear(); //清除列表内容 不包含表头 listView1.Clear(); //清除列表包含表头
//画直线
Graphics g = CreateGraphics();
Pen p = new Pen(Color.Gray);
g.DrawLine(p, 0, this.Height / 2, this.Width, this.Height / 2); //画矩形
g.DrawRectangle(p, 50, 50, 200, 100); //画圆形
g.DrawEllipse(p, 100, 100, 100, 100); //画圆柱体
int height = this.ClientSize.Height - 200;
int width = this.ClientSize.Width - 50;
int vHeight = 200;
int vWidth = 100;
g.Clear(Color.White);
SolidBrush brush = new SolidBrush(Color.Gainsboro);
for (int i = height / 2; i > 0; i--)
{
g.DrawEllipse(p, width / 2, i, vHeight, vWidth);
}
g.FillEllipse(brush, width / 2, 0, vHeight, vWidth); //释放资源
p.Dispose();
g.Dispose();
//读取图片
//Bitmap bmap = new System.Drawing.Bitmap(@"c:\1.jpg");
Bitmap bmap = (Bitmap)System.Drawing.Image.FromFile(@"c:\1.jpg");
//加载图片
Graphics g = Graphics.FromImage(bmap);
//定义字体
Font drawFont = new Font("Arial", 10, FontStyle.Bold, GraphicsUnit.Millimeter);
//定义画笔
SolidBrush drawBrush = new SolidBrush(Color.Red);
//定义坐标
int xPos = bmap.Height - (bmap.Height - 25);
int yPos = 3;
//绘制文字
g.DrawString("清纯美女", drawFont, drawBrush, xPos, yPos);
//保存图片
bmap.Save(@"c:\2.jpg");
//释放资源
bmap.Dispose();
g.Dispose();
private void btnExport_Click(object sender, EventArgs e)
{
//获取用户选择路径 导出Execl
SaveFileDialog SaveFile = new SaveFileDialog();
SaveFile.Filter = "Miscrosoft Office Excel 97-2003 工作表|*.xls|所有文件(*.*)|*.*";
SaveFile.RestoreDirectory = true;
if (SaveFile.ShowDialog() == DialogResult.OK)
{
string targetPath = SaveFile.FileName;
if (File.Exists(targetPath)) { File.Delete(targetPath); } File.Copy(fileSource, SaveFile.FileName);
DialogResult r = MessageBox.Show ("导出数据成功!" , "系统信息" , MessageBoxButtons.OK , MessageBoxIcon.Information ) ;
if (r == DialogResult.OK)
{
System.Diagnostics.Process.Start(SaveFile.FileName);
}
}
}

Winform常用的一些功能收集(持续更新)的更多相关文章
- python3.4学习笔记(六) 常用快捷键使用技巧,持续更新
python3.4学习笔记(六) 常用快捷键使用技巧,持续更新 安装IDLE后鼠标右键点击*.py 文件,可以看到Edit with IDLE 选择这个可以直接打开编辑器.IDLE默认不能显示行号,使 ...
- # OpenGL常用函数详解(持续更新)
OpenGL常用函数详解(持续更新) 初始化 void glutInit(int* argc,char** argv)初始化GULT库,对应main函数的两个参数 void gultInitWindo ...
- Android 常用开源库总结(持续更新)
前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言. 一 .基本控件 TextView HTextView 一 ...
- 【mysql】 操作 收集持续更新
一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据 GROUP_CONCAT(Name SEPARATOR ',') 需注意: 1.GROUP_CONCAT()中的值为你要合并的数据的 ...
- appium 版本更新后的方法变化更新收集 ---持续更新
在高版本的android手机(例如android 7.0 , 8.0等等),必须使用高版本的appium, 以及对应的selenium版本,那么很多的appium或者selenium方法会变得无法直接 ...
- vscode常用快捷键和插件(持续更新),以及一些常用设置的坑和技巧
一 常用快捷键 ctrl+shift+p: 打开命令面板,最常用了 ctrl+p: 搜索窗口: 直接输入文件名,跳转到文件 > 可以进入 Ctrl+Shift+P 模式 ? 列出当前可执行的动 ...
- Android常用开源库集合【持续更新】
1.FastJson 阿里巴巴工程师做的一个方便的JSON转换库 2.ButterKnife 只要作用能代替代码中大量的findviewbyid语句的使用,使用@injectview注入方式 3.v ...
- Linux常用命令及工具记录(持续更新)
一.命令 convmv 作用:文件名的编码转换 安装:sudo apt-get install convmv 使用:convmv * -f gbk -t utf8 --notest c ...
- Swift3.0 功能一(持续更新)
修改项目名称两种方式 1.Bundle name 2.Bundle display name try 三种处理异常的方式 // 在swift中提供三种处理异常的方式 // 方式一:try方式 程序员手 ...
随机推荐
- C# 索引器简介
索引器是一种特殊的类成员,它能够让对象以类似数组的方式来存取,是程序看起来更为直观,更容易编写. 1.索引器的定义 C#中的类成员可以是任意类型,包括数组和集合.当一个类包含了数组和集合成员时,索引器 ...
- javascript this对象
函数运行时,自动生成的一个内部对象,只能在函数内部使用 随着函数使用场合的不同,this的值也发生着改变,但是有一个总原则:this指的是调用函数的那个对象(核心) this对象的指向 一般情况下,我 ...
- 【深入Java虚拟机】之八:Java垃圾收集机制
转载请注明出处:http://blog.csdn.net/ns_code/article/details/18076173 对象引用 Java中的垃圾回收一般是在Java堆中进行,因为堆中几乎存放了J ...
- 1~N任意三个数最大的最小公倍数(Java版)
最大最小公倍数 如题 话不多说,直接上代码 public class MaxCommonMultiple{ public static void main(String[] args) { Scann ...
- 201521123036 《Java程序设计》第5周学习总结
本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 接口(interface):对行为的抽象 方法声明和常量值的集合 方法声明:接口中所有 ...
- 201521123086《JAVA程序设计》第五周作业
本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 书面作业 代码阅读:Child压缩包内源代码 Q1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误 ...
- 201521123097《Java程序设计》第一周学习总结
1.本周学习总结 知道了JAVA语言的发展历史和目前使用的版本,还有什么是JDK(Java Development Kit).JRE (Java Runtime Environment).JVM(Ja ...
- 201521123020 《Java程序设计》第9周学习总结
1.本周学习总结 2. 书面作业 1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? 答:数组越界:不需要 ...
- 201521123087《java程序设计》第13周学习总结
1. 本周学习总结 2. 书面作业 1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jmu.edu.cn,分析返回结果有何不同?为什么会有这样的不同? 答: 往返行 ...
- Markdown格式范例
一个例子: 例子开始 1. 本章学习总结 今天主要学习了三个知识点 封装 继承 多态 2. 书面作业 Q1. java HelloWorld命令中,HelloWorld这个参数是什么含义? 今天学了一 ...