标签:des http io 文件 for cti ar 代码
今天是情人节,咳,男人们带着他们的男朋友们,女人带着她们的女朋友们愉快的逛着街。逆天也就不随大众了,就继续出C#小白系列的教程了~~~
实在没空去录教程了,就看看文档吧,大家都知道的,录教程是比较花时间的,我不想草草了事,那是对大家和我自己的不负责,视频可以以后再录,不过软件和源码以及文档得先弄好,毕竟逆天不喜欢失信与自己~~
废话不说了,开始我们的教程吧~
一、设计图纸:
二、代码分析:
(很多人跟我说我代码就一个颜色,看起来很蛋疼。。。好吧以后都用空间自带的高级功能来显示代码)
今天呢,我们就讲一下网上最常用的一种编程方式,调用别人封装好的dll文件,然后简单赋几个属性再调用几个方法就可以来实现你要的功能了(这个和易语言的易模块相似)
总共有三个大方向:
1、调用dll文件生成二维码图片(核心)
记得引入命名空间:
using ThoughtWorks.QRCode.Codec; //QRCodeEncoder 的 命名 空间
using System.Drawing; //Bitmap 的 命名 空间
using System.Windows.Forms; // Form 的 命名 空间
Bitmap image=null; //来存放图片的
QRCodeEncoder qr = new QRCodeEncoder(); //实例化对象
qr.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE; //以字节存储()
qr.QRCodeScale = 5; //这个设置二维码的大小 5-250*250 4-200*200 3-150*150 2-100*100 1-50*50
qr.QRCodeVersion = 8; //版本号,8是最新版本
try
{
qr.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M; //它自带纠错功能,几个选项都差不多
image = qr.Encode(s, Encoding.UTF8); //以UTF-8的方式存储字符串(国际编码)
}
catch //这个异常处理是放在输入内容太多造成数组溢出等异常
{
MessageBox.Show("亲啊,你话太多了吧~~~我肚子装不下啊~~");
}
其实当你不知道这个方法是什么的时候,把鼠标移到上面,按F12就可以看解析了
写这个dll的大牛比较懒,我反编译的很蛋疼。。。才大概看懂他是啥意思。。。然后才有了后面的方法和属性的调用
2、另类方式调子窗体(一般都是show(),我这边不是)
调子窗体一般主窗体都不可避免的存在着,感觉很显眼,那有没有什么特殊的方式来调用呢?
逆天大一的时候研究的要死也没弄出来,各种找资料,各种搜索。。。后来在录C#伪病毒的时候才突然在我的资料库中找到这么个神奇的方法:
主窗体点击按钮时:div.ShowDialog(this); //把窗体变成对话框模式 div是子窗体的实例化对象(Div div=new Div();)
子窗体加载的时候: this.Owner.Hide(); //把设置打开本窗体的窗体隐藏掉
子窗体关闭事件中:Application.Exit(); //记得退出哦~(如果你想继续显示主窗体就写this.Owner.Show();)
3、把PictureBox里面的图片保存出来
教你个最简单的方法:
先在工具箱中找个 saveFileDialog控件放窗体中,然后看下面:
saveFileDialog1.Filter = "jpg图像(*.jpg)|*.jpg|png图像(*.png)|*.png|bmp图像(*.bmp)|*.bmp|所有格式(*.*)|*.*";
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
string folderP = saveFileDialog1.FileName; //把你保存对话框中输入的图片名赋值给字符串folderP
Image img = qrImage.Image; //开始把image弄出来了~
img.Save(folderP); //保存了,顺便把名字也帮你改好~
}
三、源码分享:http://pan.baidu.com/s/1jGl46kI
四、视频共享: 等~~~
本期推荐:万恶的.NET Reflector 7.0 8.0 下一期:打造自己的图片查看器
小白C#窗体系列-02.二维码生成器,布布扣,bubuko.com
小白C#窗体系列-02.二维码生成器
标签:des http io 文件 for cti ar 代码
原文地址:http://www.cnblogs.com/dunitian/p/3889062.html