#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常用的一些功能收集(持续更新)的更多相关文章

  1. python3.4学习笔记(六) 常用快捷键使用技巧,持续更新

    python3.4学习笔记(六) 常用快捷键使用技巧,持续更新 安装IDLE后鼠标右键点击*.py 文件,可以看到Edit with IDLE 选择这个可以直接打开编辑器.IDLE默认不能显示行号,使 ...

  2. # OpenGL常用函数详解(持续更新)

    OpenGL常用函数详解(持续更新) 初始化 void glutInit(int* argc,char** argv)初始化GULT库,对应main函数的两个参数 void gultInitWindo ...

  3. Android 常用开源库总结(持续更新)

    前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关于Android 优秀的开源库,也可以在下面留言. 一 .基本控件 TextView HTextView 一 ...

  4. 【mysql】 操作 收集持续更新

    一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据 GROUP_CONCAT(Name SEPARATOR ',') 需注意: 1.GROUP_CONCAT()中的值为你要合并的数据的 ...

  5. appium 版本更新后的方法变化更新收集 ---持续更新

    在高版本的android手机(例如android 7.0 , 8.0等等),必须使用高版本的appium, 以及对应的selenium版本,那么很多的appium或者selenium方法会变得无法直接 ...

  6. vscode常用快捷键和插件(持续更新),以及一些常用设置的坑和技巧

    一 常用快捷键 ctrl+shift+p:  打开命令面板,最常用了 ctrl+p: 搜索窗口: 直接输入文件名,跳转到文件 > 可以进入 Ctrl+Shift+P 模式 ? 列出当前可执行的动 ...

  7. Android常用开源库集合【持续更新】

    1.FastJson  阿里巴巴工程师做的一个方便的JSON转换库 2.ButterKnife 只要作用能代替代码中大量的findviewbyid语句的使用,使用@injectview注入方式 3.v ...

  8. Linux常用命令及工具记录(持续更新)

    一.命令 convmv   作用:文件名的编码转换   安装:sudo apt-get install convmv   使用:convmv * -f gbk -t utf8 --notest   c ...

  9. Swift3.0 功能一(持续更新)

    修改项目名称两种方式 1.Bundle name 2.Bundle display name try 三种处理异常的方式 // 在swift中提供三种处理异常的方式 // 方式一:try方式 程序员手 ...

随机推荐

  1. Microsoft Visual Studio 打开代码出现乱码解决方案

    在用VS编写代码时,文本的字符集可能和编译器的字符集不同,在这种情况下代码会显示出乱码. 解决办法: 在VS的工具->选项里面找到"文本编辑器",勾选“自动检测不带签名的UT ...

  2. JavaScript学习日志(五):DOM

    一,基本定义 DOM是针对HTML和XML文档的API,根据W3C的HTML DOM标准,html文档中所以内容(无论是元素还是标签还是注释还是元素属性)都是节点. 二,Node类型:每一个节点都含有 ...

  3. 超级简单实用的前端必备技能-javascript-全屏滚动插件

      fullPage.js fullPage.js是一个基于jQuery的全屏滚动插件,它能够很方便.很轻松的制作出全屏网站 本章内容将详细介绍Android事件的具体处理及常见事件. 主要功能 支持 ...

  4. 第二次项目冲刺(Beta阶段)5.20

    1.提供当天站立式会议照片一张 会议内容: ①检查前一天的任务情况,心得分享以及困难分析. ②制定新一轮的任务计划. 2.每个人的工作 (1)工作安排 队员 今日进展 明日安排 王婧 #42文件分类改 ...

  5. 微信小程序icon,text,progress标签的测试

    一:testIconAndTextAndProgress.wxml的代码如下.testIconAndTextAndProgress.js自动生成示例代码 //testIconAndTextAndPro ...

  6. 201521123017 《Java程序设计》第7周学习总结

    1. 本周学习总结 2. 书面作业 Q1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 1.2 解释E remove(int index)源代码 1.3 结合1. ...

  7. 201521123006 《Java程序设计》第5周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 接口与抽象类拥有相同之处:(1)都代表系统的抽象层. (2)都不能被实例化(不能 ...

  8. 使用Eclipse Egit与码云管理你的代码

    总体流程: 建立远程仓库 建立本地仓库并与远程仓库关联 将Eclipse中的项目提交到本地仓库并进而push到远程仓库 一. 配置Eclipse EGit 图解Eclipse中安装及配置EGit插件中 ...

  9. 201521123049 《JAVA程序设计》 第2周学习总结

    *1. 本周学习总结 1.复习了一遍基本类型:整数类型(byte,short,int,long,char).浮点类型(float,double).boolean类型(true, false). 2.了 ...

  10. 201521123025 《Java程序设计》第2周学习总结

    1. 本章学习总结 一些注意: (1)在JAVA中,不加后缀的浮点数被默认为double型,如果要用float型就要在数据后加上f或F后缀,如float a=32.6f(正确);float a=32. ...