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; //1366*768
namespace PaintTest1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
System.Random r = new System.Random();
Graphics g;
g = this.CreateGraphics();
/* while(true)
{
int x1 = r.Next(0, 1366);
int y1 = r.Next(0, 200);
int x2 = x1;
int y2 = y1 + r.Next(0, 400);
for(int i=y1;i<=y2;i++)
{
Pen greenPen = new Pen(Color.Green, r.Next(1, 15));
g.DrawLine(greenPen, x1, y1, x2, y2);
}
} */
for (int i = 0; i < 5000; i++)
{
Pen whitePen = new Pen(Color.FromArgb(r.Next(0,255), r.Next(0,255), r.Next(0,255)),8);
int x1 = r.Next(100,300);
int y1 = r.Next(100, 500);
int x2 = r.Next(100, 300);
int y2 = r.Next(100, 500);
// int x1 = 500;
// int y1 = 500;
// int x2 = i;
// int y2 = 1000 * 1000 - i * i;
g.DrawLine(whitePen, x1, y1, x2, y2); }
for (int i = 0; i < 5000; i++)
{
Pen whitePen = new Pen(Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255)),9);
int x1 = 500; //650-900
int y1 = 300; //100-500
int x2 = r.Next(400, 600);
int y2 = r.Next(100, 500);
// int x1 = 500;
// int y1 = 500;
// int x2 = i;
// int y2 = 1000 * 1000 - i * i;
g.DrawLine(whitePen, x1, y1, x2, y2); }
for (int i = 0; i < 5000; i++)
{
Pen whitePen = new Pen(Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255)),10);
int x1 = 900; //650-900
int y1 = 100; //100-500
int x2 = r.Next(700, 900);
int y2 = r.Next(100, 500);
// int x1 = 500;
// int y1 = 500;
// int x2 = i;
// int y2 = 1000 * 1000 - i * i;
g.DrawLine(whitePen, x1, y1, x2, y2); }
for (int i = 0; i < 5000; i++)
{
Pen whitePen = new Pen(Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255)),11);
int x1 = 1000; //650-900
int y1 = 500; //100-500
int x2 = r.Next(1000, 1200);
int y2 = r.Next(100, 500);
// int x1 = 500;
// int y1 = 500;
// int x2 = i;
// int y2 = 1000 * 1000 - i * i;
g.DrawLine(whitePen, x1, y1, x2, y2); }
for (int i = 0; i < 5000; i++)
{
Pen whitePen = new Pen(Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255)),12);
int x1 = r.Next(100,1200); ; //650-900
int y1 = r.Next(600, 700); ; //100-500
int x2 = r.Next(100, 1200);
int y2 = r.Next(600, 700);
// int x1 = 500;
// int y1 = 500;
// int x2 = i;
// int y2 = 1000 * 1000 - i * i;
g.DrawLine(whitePen, x1, y1, x2, y2); }
for (int i = 0; i < 5000; i++)
{
Pen whitePen = new Pen(Color.FromArgb(r.Next(0, 255), r.Next(0, 255), r.Next(0, 255)),r.Next(1,15));
int x1 = r.Next(100, 1200); ; //650-900
int y1 = r.Next(600, 700); ; //100-500
int x2 = r.Next(100, 1200);
int y2 = r.Next(600, 700);
// int x1 = 500;
// int y1 = 500;
// int x2 = i;
// int y2 = 1000 * 1000 - i * i;
g.DrawLine(whitePen, x1, y1, x2, y2); }
}
}
}

效果图<这是一种动态的画图,效果还行,以下将改为数字雨的模式測试,相关算法正在调试.

C#.NEt-GDI+中的Pen測试的更多相关文章

  1. js中window.onload 与 jquery中$(document.ready()) 測试

    js中window.onload 与 jquery中$(document.ready())差别,验证代码例如以下(调换js代码和Jquer代码书写顺序測试.执行结果一样.因此与代码书写位置没关系): ...

  2. PHP 使用Apache 中的ab 測试站点的压力性能

    打开Apacheserver的安装路径(我用的是 WampServer),在bin文件夹中有一个ab.exe的可运行程序,它就是要介绍的压力測试工具. watermark/2/text/aHR0cDo ...

  3. 单元測试中 Right-BICEP 和 CORRECT

    My Blog:http://www.outflush.com/ 在单元測试中,有6个总结出的值得測试的方面,这6个方面统称为 Right-BICEP.通过这6个方面的指导.能够较全然的測试出代码中的 ...

  4. SWTBOK測试实践系列(5) -- 项目中使用手动和自己主动化的策略

    手动測试和自己主动化測试永远是一个非常热门的话题.自己主动化也一直被人们捧上神坛.自己主动化測试和手动測试从技术上来说本质事实上都是測试用例设计.仅仅只是终于形式一个是人工运行,一个是代码运行罢了.这 ...

  5. 软件測试、ios中的測试概念以及步骤

    软件測试: 软件測试的目标是应该服务于软件项目的目标,能够通过建议反馈使用更加高效的方法和工具,提升软件开发效率以及软件开发质量.同一时候还能够通过过一些手段,更早.更快.很多其它地发现缺陷.从容减少 ...

  6. Maven项目中mvn clean后找不到測试类问题

    在Maven项目中进行单元測试,但mvn clean后又一次mvn install项目,再次进行单元測试.会有下面的错误. <span style="font-family:KaiTi ...

  7. [WebGL入门]十九,遮挡剔除和深度測试

    注:文章译自http://wgld.org/,原作者杉本雅広(doxas),文章中假设有我的额外说明,我会加上[lufy:],另外.鄙人webgl研究还不够深入,一些专业词语,假设翻译有误.欢迎大家指 ...

  8. Android单元測试之JUnit

    随着近期几年測试方面的工作慢慢火热起来.常常看见有招聘測试project师的招聘信息.在Java中有单元測试这么一个JUnit 方式,Android眼下主要编写的语言是Java,所以在Android开 ...

  9. php单元測试

    你是否在程序开发的过程中遇到下面的情况:当你花了非常长的时间开发一个应用后,你觉得应该是大功告成了,可惜在调试的时候,老是不断的发现bug,并且最可怕的是,这些bug是反复出现的,你可能发现这些bug ...

随机推荐

  1. 笔试算法题(01):字符串倒置 & 八皇后问题

    出题:将字符串“ABCD1234efgh”进行前后对调: 分析: 常见的考查指针使用的案例,知道字符串长度之后,依次交换位置i以及位置(length-1-i)上的内容,直到重叠: 注意不能直接修改指针 ...

  2. buf.entries()详解

    buf.entries() 返回:{Iterator} 从当前 Buffer 的内容中,创建并返回一个 [index, byte] 形式的迭代器. const buf = Buffer.from('b ...

  3. 爬虫框架urllib 之(二) --- urllib基础

    urllib 官方文档:https://docs.python.org/zh-cn/3/library/urllib.html urllib介绍 Urllib是python内置的HTTP请求库,是py ...

  4. Unix网络编程 — 头文件解析

    1.1. < sys/types.h > primitive system data types(包含很多类型重定义,如pid_t.int8_t等) 1.2. < sys/socke ...

  5. jquery 点击弹框

    <a href="#" class="big-link" data-reveal-id="myModal" data-animatio ...

  6. 易维信(EVTrust)支招五大技巧识别钓鱼网站

    网上购物和网上银行凭借其便捷性和通达性,在互联网上日渐流行.在互联网上,你可以随时进行转账汇款或进行交易.据艾瑞咨询发布<2008-2009年中国网上支付行业发展报告>显示:中国互联网支付 ...

  7. windows 下 iptables

    windows自带的防火墙就可以. 在命令行方式下输入netsh回车,再输入firewall回车,之后想干什么就干什么. 头一次见对图形化防火墙头晕的...

  8. Spring Boot Jpa 表名小写转大写

    今天在使用SpringBoot整合Hibernate后创建表,表名为小写,而在linux下,mysql的表名是区分大小写的,因此在我的数据表中,就出现了两个一样的表 act_id_user 和  AC ...

  9. cogs——555. 网络探测

    555. 网络探测 ★☆   输入文件:ping.in   输出文件:ping.out   简单对比时间限制:1 s   内存限制:128 MB [问题描述]    当出现网络故障时,我们经常使用“p ...

  10. DTRACE简介(2)

    By samwan on 三月 21, 2007 通过上一次的介绍,相信大家对DTRACE已经有了一个初步的认识.上一次结束时专门留了一个例子,可能大家第一次看有很多不明白的地方,没有关系,随着我们对 ...