C#自动生成用于填写青铜器的“工作日报”

青铜器真是个折磨人的东东,落下了好几天的“工作情况”,得一天天补呀。蛋疼的是每天的工作情况不能完全一样,所以写了个工具,方便以后填写日报用。

工具的编写思路是:建立一个字符串数组,里面装上几十条工作任务,每单击一次“生成工作情况”按钮就从中随机选出四条不重样的,复制到剪贴板。

主要的控件就2个

1)上面的文本框txtGoing,要求只读,字体调大些

2)下面的生成按钮btnGenerate

还有就是注意窗体的TopMost属性要调成True,免得操作网页的时候小窗口就跑到后面去了

程序代码:

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;

namespace LogTool
{
    public partial class FormMain : Form
    {
        //工作情况待选项
        public string[] GoingText = new string[] 
        { 
            "维护监控客户端,优化代码",
            "与研发中心协调解决监控客户端的内存泄漏问题",
            "学习C++编程",
            "熟悉linux环境",
            "修复程序BUG,发布版本",
            "搭建环境,测试程序运行",
            "对程序进行新一轮的自测,优化代码",
            "阅读项目文档,学习项目相关知识",
            "研究监控数据脚本,熟悉Linux上的Oracle数据库相关知识",
            "修订详细设计文档",
            "维护监控系统,为NEEQ提供技术支持",
            "探讨新需求的实现,评估新需求的可行性",
            "制定了新需求的实现时间表",
            "程序编码",
            "程序新功能实现,发布新版本",
            "参加业务相关的集中培训",
            "总结程序运行环境,完善程序相关文档",
            "为程序部署提供技术支持",
            "完善监控客户端使用手册"
        };

        public FormMain()
        {
            InitializeComponent();
        }

        //随机生成4条工作情况
        private void btnGenerate_Click(object sender, EventArgs e)
        {
            try
            {
                //随机生成4个不重复的数字由小到大排列
                Random rd = new Random(DateTime.Now.Millisecond);
                int[] rdnum = new int[4];
                rdnum[0] = rd.Next(GoingText.Length);
                rdnum[1] = rd.Next(GoingText.Length);
                while (rdnum[1] == rdnum[0])
                {
                    rdnum[1] = rd.Next(GoingText.Length);
                }
                rdnum[2] = rd.Next(GoingText.Length);
                while (rdnum[2] == rdnum[0] || rdnum[2] == rdnum[1])
                {
                    rdnum[2] = rd.Next(GoingText.Length);
                }
                rdnum[3] = rd.Next(GoingText.Length);
                while (rdnum[3] == rdnum[0] || rdnum[3] == rdnum[1] || rdnum[3] == rdnum[2])
                {
                    rdnum[3] = rd.Next(GoingText.Length);
                }
                Array.Sort(rdnum);

                //生成工作情况
                StringBuilder sb = new StringBuilder();
                sb.Append("1." + GoingText[rdnum[0]] + "\r\n");
                sb.Append("2." + GoingText[rdnum[1]] + "\r\n");
                sb.Append("3." + GoingText[rdnum[2]] + "\r\n");
                sb.Append("4." + GoingText[rdnum[3]] + "\r\n");
                this.txtGoing.Text = sb.ToString();
                Clipboard.Clear();
                Clipboard.SetText(sb.ToString()); //复制到剪贴板
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
    }
}

END

时间: 2024-10-17 18:13:21

C#自动生成用于填写青铜器的“工作日报”的相关文章

自动生成用于填写青铜器的“工作日报”(VB.NET改进版)

之前写过一篇 C#自动生成用于填写青铜器的"工作日报".由于后来重装了几次系统,每次重新编译都要拉界面,感觉很不方便 :-(好吧这和我比较懒也有关系,所以这回加强了一下程序的功能.重写后的程序,生成条目的数量和生成条目的内容都放到了XML配置文件里.方便编译,缺点是控制台没有TopMost属性,每轮"复制+粘贴"后都要把控制台呼唤出来. 配置文件LogConfig.xml,要求与本程序的可执行文件在同一个目录下: <?xml version="1.0

自动生成宣传单打印页--提高工作效率

公司每次搞促销活动都需要制作大量的单品宣传单页,如果靠美工手动去做,需要大量的时间,最近刚刚更新了公司商城首页,不是很忙,就琢磨着开发一个自动生成宣传单页的功能,于是所做就做,流程如下: 1.使用的是火狐浏览器的打印功能,其他浏览器并未测试,因为这是内部使用功能,亦无需兼容其他浏览器. 此处注意打印预览时将边距设为0,并选择打印背景(颜色和图片). 2.商城每个产品都有详情页,可以很容易获取到信息,于是我们要做的就是将这些信息排成我们需要打印出来的样式 首先是背景尺寸:1205*1730,这个尺

金融行业工作报告自动生成系统

对于诸多行业客户,在平时工作实践中,会产生大量的财务数据.交易数据,以及基于这些数据的计算过程和结果.如何将此类数据的采集.编辑.加工.汇总.整理.存储.产生分析报告,得到有效信息,工作量极大,人工成本昂贵,并且繁琐,存在风险.如果客户的工作报告生成系统为人工制作,操作风险会比较高,数据需人工采集编辑,未来产品数量和数据爆发式增长,现有制作报告人力会面临制作时效较长.缺失系统管理.无法有效完成报告查询定位等风险,间接影响客户服务体验.基于此,构建一个行业客户工作报告生成配套管理系统,从报告的出生

《音乐商店》第4集:自动生成StoreManager控制器

一.自动生成StoreManager控制器 二.查看 StoreManager 控制器的代码 现在,Store Manager 控制器中已经包含了一定数量的代码,我们从头到尾重新过一下. 1.访问数据库代码 首先,在控制器中包含了标准的 MVC 控制器的代码,为了使用方便,还可以引用我们的模型类所在的命名空间 MvcMusicStore.Models.控制器还拥有了一个私有的 MusicStoreDBContext的私有成员,以方便控制器中的每个 Action 访问数据库. using Syst

使用autotools自动生成Makefile并在此之上使用dh-make生成可发布的deb程序包(详解)

转自:http://blog.csdn.net/longerzone/article/details/12705507 一.前言 本文将介绍如何使用autotools生成一个Makefile文件,并在此基础上使用dh-make和debuild生成一个可发布的deb程序包,这也是我们在Linux下开发应用程序以及想要发布应用程序需要做的. 无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令.不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或 make ins

Makefile 7——自动生成依赖关系 三颗星

后面会介绍gcc获得源文件依赖的方法,gcc这个功能就是为make而存在的.我们采用gcc的-MM选项结合sed命令.使用sed进行替换的目的是为了在目标名前加上"objs/"前缀.gcc的-E选项,预处理.在生成依赖关系时,其实并不需要gcc编译源文件,只要预处理就可以获得依赖关系了.通过-E选项,可以避免生成依赖关系时gcc发出警告,以及提高依赖关系的生成效率. 现在,已经找到自动生成依赖关系的方法了,那么如何将其整合到我们complicated项目的Makefile中呢?自动生成

php学习之道:php中soap的使用实例以及生成WSDL文件,提供自动生成WSDL文件的类库——SoapDiscovery.class.php类

1. web service普及: Webservice soap wsdl区别之个人见解 Web Service实现业务诉求:  Web Service是真正"办事"的那个,提供一种办事接口的统称. WSDL提供"能办的事的文档说明":  对要提供的服务的一种描述格式.我想帮你的忙,但是我要告诉你我都能干什么,以及干这些事情需要的参数类型. SOAP提供"请求"的规范:  向服务接口传递请求的格式,包括方法和参数等.你想让人家办事,总得告诉人家

报告自动生成

对于诸多行业客户,在平时工作实践中,会产生大量的财务数据.交易数据,以及基于这些数据的计算过程和结果.如何将此类数据的采集.编辑.加工.汇总.整理.存储.产生分析报告,得到有效信息,工作量极大,人工成本昂贵,并且繁琐,存在风险.如果客户的工作报告生成系统为人工制作,操作风险会比较高,数据需人工采集编辑,未来产品数量和数据爆发式增长,现有制作报告人力会面临制作时效较长.缺失系统管理.无法有效完成报告查询定位等风险,间接影响客户服务体验.基于此,构建一个行业客户工作报告生成配套管理系统,从报告的出生

菜鸟学php扩展 之 自动生成的扩展框架详解(二)

前言 上一文:菜鸟学php扩展 之 hello world(一),不问所以然的,强行与php扩展say hello了.对于ext_skel自动生成的框架,将在本文进行详解,当作备忘录. 正文 ext_skel的用法 ./ext_skel --extname=module [--proto=file] [--stubs=file] [--xml[=file]] [--skel=dir] [--full-xml] [--no-help] --extname=module module is the