文档章节

Winform常用的一些功能收集(持续更新)

深圳大道
 深圳大道
发布于 2016/12/29 15:25
字数 692
阅读 1
收藏 0
#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);
                }
            }
        }

本文转载自:http://blog.csdn.net/smartsmile2012/article/details/22724375

深圳大道
粉丝 3
博文 877
码字总数 0
作品 0
深圳
架构师
私信 提问
Winform开发框架之通用自动更新模块

在网络化的环境中,特别是基于互联网发布的Winform程序,程序的自动更新功能是比较重要的操作,这样可以避免挨个给使用者打电话、发信息通知或者发送软件等,要求其对应用程序进行升级。实现...

长平狐
2012/08/22
1K
0
Winform开发框架之通用自动更新模块

在网络化的环境中,特别是基于互联网发布的Winform程序,程序的自动更新功能是比较重要的操作,这样可以避免挨个给使用者打电话、发信息通知或者发送软件等,要求其对应用程序进行升级。实现...

长平狐
2012/06/11
498
0
Aspose.Tasks 6.2.0 发布,.NET 项目管理组件

Aspose.Tasks 6.2.0 发布,此版本更新内容如下: 扩展了自动进行项目相关数据重新计算的功能 扩展了根据项目类型和资源选项来重新计算项目任务相关数据的功能,其中包括重新计算单位任务和作...

oschina
2014/01/10
340
0
Winform开发框架的重要特性总结

从事Winform开发框架的研究和推广,也做了有几个年头了,从最初的项目雏形到目前各种重要特性的加入完善,是经过了很多项目的总结归纳和升华,有些则是根据客户需要或者应用前景的需要进行的...

walb呀
2017/12/04
0
0
Winform开发框架重构总结

最近一直致力于Winform开发框架的重构工作,因为发现要维护传统Winform开发框架、WCF开发框架、混合式开发框架,以及相关的模块,包括权限管理、字典管理模块、附件管理、人员管理等一些辅助...

walb呀
2017/12/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 早上儿子问我他是怎么来的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @凉小生 :#今日歌曲推荐# 少点戾气,愿你和这个世界温柔以待。中岛美嘉的单曲《僕が死のうと思ったのは (曾经我也想过一了百了)》 《僕が死の...

小小编辑
今天
1K
14
Excption与Error包结构,OOM 你遇到过哪些情况,SOF 你遇到过哪些情况

Throwable 是 Java 中所有错误与异常的超类,Throwable 包含两个子类,Error 与 Exception 。用于指示发生了异常情况。 Java 抛出的 Throwable 可以分成三种类型。 被检查异常(checked Exc...

Garphy
今天
38
0
计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
昨天
40
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
昨天
61
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
昨天
20
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部