码迷,mamicode.com
首页 > Windows程序 > 详细

小白C#窗体系列-02.二维码生成器

时间:2014-08-04 01:45:26      阅读:363      评论:0      收藏:0      [点我收藏+]

标签:des   http   io   文件   for   cti   ar   代码   

今天是情人节,咳,男人们带着他们的男朋友们,女人带着她们的女朋友们愉快的逛着街。逆天也就不随大众了,就继续出C#小白系列的教程了~~~

        实在没空去录教程了,就看看文档吧,大家都知道的,录教程是比较花时间的,我不想草草了事,那是对大家和我自己的不负责,视频可以以后再录,不过软件和源码以及文档得先弄好,毕竟逆天不喜欢失信与自己~~

废话不说了,开始我们的教程吧~ 

软件下载(.NET 4.0 框架)http://pan.baidu.com/s/1i3BUVNv【源码看下面】
bubuko.com,布布扣
 
bubuko.com,布布扣
 


一、设计图纸:
bubuko.com,布布扣

二、代码分析:

(很多人跟我说我代码就一个颜色,看起来很蛋疼。。。好吧以后都用空间自带的高级功能来显示代码)

        今天呢,我们就讲一下网上最常用的一种编程方式,调用别人封装好的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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!