| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1205 人关注过本帖
标题:求助 C#打印picturebox
只看楼主 加入收藏
二胖臭臭
Rank: 2
等 级:论坛游民
威 望:1
帖 子:9
专家分:10
注 册:2011-3-17
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
求助 C#打印picturebox
我导入数据后,picturebox内自动生成了曲线图,我另加了一个打印按钮,希望按下打印按钮后,能够打印picturebox内的曲线图,我是一个初学者,希望高手帮帮忙,先谢谢了!
搜索更多相关主题的帖子: 曲线图 
2011-03-23 22:05
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
不懂,只听说C#有打印文档的控件!

   唯实惟新 至诚致志
2011-03-23 22:42
zhp223
Rank: 5Rank: 5
等 级:职业侠客
帖 子:99
专家分:362
注 册:2010-3-21
收藏
得分:20 
程序代码:
        /// <summary>
        /// 打印
        /// </summary>
        /// <param name="title">标题</param>
        /// <param name="printPageEventHandler"></param>
        public static void Print(string title, PrintPageEventHandler printPageEventHandler)
        {
            PrintDocument printDocument1 = new PrintDocument();
            PageSetupDialog pageSetupDialog1 = new PageSetupDialog();
            PrintPreviewDialog printPreviewDialog1 = new PrintPreviewDialog();
            PrintDialog printDialog1 = new PrintDialog();

            printDocument1.PrintPage += printPageEventHandler;
            printDocument1.DocumentName = title;
            pageSetupDialog1.PageSettings = new PageSettings();
           
            if (pageSetupDialog1.ShowDialog() == DialogResult.OK)
            {
                printDocument1.DefaultPageSettings = pageSetupDialog1.PageSettings;
                //打印前设置打印机
                printDialog1.PrinterSettings = new PrinterSettings();
                printDialog1.Document = printDocument1;
                printPreviewDialog1.Document = printDocument1;
                // 预览
                printPreviewDialog1.ShowDialog();
               
                if (printDialog1.ShowDialog() == DialogResult.OK)
                {
                    printDocument1.Print();
                }
            }
        }

// 调用
Print("打印曲线图", (sender, e) => { e.Graphics.DrawImage(pictureBox1.Image, 0, 0); });

日有所思,夜有所梦
2011-03-24 12:18
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
高手

   唯实惟新 至诚致志
2011-03-24 12:38
二胖臭臭
Rank: 2
等 级:论坛游民
威 望:1
帖 子:9
专家分:10
注 册:2011-3-17
收藏
得分:0 
回复 3楼 zhp223
我不明白打印事件是怎么发生的
如果我是:
 private void button2_Click(object sender, EventArgs e)
{
            PrintDialog MyPrintDg = new PrintDialog();
            MyPrintDg.Document = printDocument2;
            printDocument2.PrintPage += new PrintPageEventHandler(this.printDocument2_PrintPage);
            if (MyPrintDg.ShowDialog() == DialogResult.OK)
            {
                try
                {
                    printDocument2.Print();
                }
                catch
                {   //停止打印
                    printDocument2.PrintController.OnEndPrint(printDocument2, new System.Drawing.Printing.PrintEventArgs());
                }
            }
        }
 private void printDocument2_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
        {
            e.Graphics.DrawImage(pictureBoxBoXing.Image, 0, 0);
            e.HasMorePages = true;//允许多页打印
         }
这是哪儿错了,根本打印不出东西来,特别是到e.Graphics.DrawImage(pictureBoxBoXing.Image, 0, 0);
这一句就不执行了!希望你指点一下,谢谢了!

2011-03-24 16:57
zhp223
Rank: 5Rank: 5
等 级:职业侠客
帖 子:99
专家分:362
注 册:2010-3-21
收藏
得分:0 
程序应该没问题,检查一下打印机设置好了没。
我没连打印机真正打印过,只是弹出那些打印设置界面,然后点打印就卡在那“正在打印”。
呵呵。。。

日有所思,夜有所梦
2011-03-25 19:04
快速回复:求助 C#打印picturebox
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033890 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved