C#如何打印窗体

C#如何打印窗体,第1张

using System

using System.Windows.Forms

using System.Drawing

using System.Drawing.Printing

public class Form1 :

Form

{//实现C#打印窗体

private Button printButton = new Button()

private PrintDocument printDocument1 = new PrintDocument()

public Form1()

{

printButton.Text = "Print Form"

printButton.Click += new EventHandler(printButton_Click)

printDocument1.PrintPage +=

new PrintPageEventHandler(printDocument1_PrintPage)

this.Controls.Add(printButton)

}

void printButton_Click(object sender, EventArgs e)

{

CaptureScreen()

printDocument1.Print()

}

//实现C#打印窗体

Bitmap memoryImage

private void CaptureScreen()

{

Graphics myGraphics = this.CreateGraphics()

Size s = this.Size

memoryImage = new Bitmap(s.Width, s.Height, myGraphics)

Graphics memoryGraphics = Graphics.FromImage(memoryImage)

memoryGraphics.CopyFromScreen(

this.Location.X, this.Location.Y, 0, 0, s)

}

private void printDocument1_PrintPage(System.Object sender,

System.Drawing.Printing.PrintPageEventArgs e)

{

e.Graphics.DrawImage(memoryImage, 0, 0)

}

//实现C#打印窗体

public static void Main()

{

Application.Run(new Form1())

}

}

你在调用e.Graphics.DrawImage(memoryImage, 0, 0)

方法前,没有调用CaptureScreen方法,所嫌返以碧伍memoryImage为null

当然报错了。芹慧饥

string text="提亏启枯示内容"

MessageBox.Show(text, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information)

MessageBox.Show(text, this.Text, 旁袜MessageBoxButtons.OK, 销洞MessageBoxIcon.Exclamation)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12265021.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存