早教吧作业答案频道 -->其他-->
(C#)使用BitBlt函数绘出来的图都是黑色namespacenbsp;TestGDI{nbsp;nbsp;nbsp;nbsp;publicnbsp;partialnbsp;classnbsp;Form1nbsp;:nbsp;Formnbsp;nbsp;nbsp;nbsp;{nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;[DllImport(“gdi32.dll“)]nbsp;nbsp;nbsp;nb
题目详情
(C#)使用BitBlt函数绘出来的图都是黑色namespacenbsp;TestGDI{nbsp;nbsp;nbsp;nbsp;publicnbsp;partialnbsp;classnbsp;Form1nbsp;:nbsp;Formnbsp;nbsp;nbsp;nbsp;{nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;[DllImport(“gdi32.dll“)]nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;privatenbsp;staticnbsp;externnbsp;boolnbsp;BitBlt(nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;IntPtrnbsp;hdcDest,nbsp;//目标设备的句柄nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;nXDest,nbsp;//nbsp;目标对象的左上角的X坐标nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;nYDest,nbsp;//nbsp;目标对象的左上角的X坐标nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;nWidth,nbsp;//nbsp;目标对象的矩形的宽度nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;nHeight,nbsp;//nbsp;目标对象的矩形的长度nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;IntPtrnbsp;hdcSrc,nbsp;//nbsp;源设备的句柄nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;nXSrc,nbsp;//nbsp;源对象的左上角的X坐标nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;nYSrc,nbsp;//nbsp;源对象的左上角的X坐标nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;dwRopnbsp;//nbsp;光栅的操作值nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;);nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;publicnbsp;constnbsp;intnbsp;ROP_SrcCopynbsp;=nbsp;0xCC0020;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;publicnbsp;Form1()nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;{nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;InitializeComponent();nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;privatenbsp;voidnbsp;btnShow_Click(objectnbsp;sender,nbsp;EventArgsnbsp;e)nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;{nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Imagenbsp;imgnbsp;=nbsp;Image.FromFile(@“image\1.bmp“);nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Graphicsnbsp;mgnbsp;=nbsp;Graphics.FromImage(img);nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;Graphicsnbsp;gnbsp;=nbsp;this.picMain.CreateGraphics();nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;//pictureBoxnbsp;picMainnbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;xnbsp;=nbsp;this.picMain.Width;nbsp;//pictureBox的Widthnbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;intnbsp;ynbsp;=nbsp;this.picMain.Height;nbsp;//pictureBox的Heightnbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;IntPtrnbsp;dc1nbsp;=nbsp;g.GetHdc();nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;IntPtrnbsp;dc2nbsp;=nbsp;mg.GetHdc();nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;BitBlt(dc1,nbsp;100,nbsp;100,nbsp;x,nbsp;y,nbsp;dc2,nbsp;0,nbsp;0,nbsp;ROP_SrcCopy);nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;nbsp;}}在picMain里面的图的大小和1.bmp相同,但就是一团黑色的.
▼优质解答
答案和解析
必须是Graphics绘制到能看到的地方才能用BitBlt也就是说先用Graphics的RrawImage把图绘到一个picbox,然后才能用BitBlt把图从一个picbox复制到另一个picbox下面这个例子是VB.net的,不过可以C#化。如果需要就留言吧。
看了 (C#)使用BitBlt函数...的网友还看了以下:
在循环双链表的p所指节点之后插入s所直接点操作A,p->next=s;s->prior=p;p->n 2020-03-31 …
求元素周期表的拼音很多元素不会读,查字典又辛苦,希望有个拼音大全的Li锂lǐ Be铍pí B硼pé 2020-04-05 …
英语单词填空(组成单词)1)d.l.e.d.m.i2)l.e.p.o.i.ee3)u.y.g.o. 2020-04-25 …
求高手迅速英语翻译成中文when the robot senses, and when 2020-05-16 …
用这些英文字母拼词这些英文字母打乱了顺序.一个题目一个词.第一题:r,c,t,a,e,s,r第二题 2020-05-16 …
已知文法G2=(VT={a,',',(,)},VN{S,L},S,P),其中P为, S→(L)|a 2020-05-26 …
英语单词填空1.时间状语:d-r-n-2.场所:b-s-s-o-f-r--e-a-t-e-t3.教 2020-07-14 …
推断题:现有如下反应(反应条件均不给),推断物质⑴A→B+C+D⑵C+E→C+F+D⑶D+G→H⑷ 2020-07-30 …
集合M={x│x=3k-2,k∈Z},集合P={x│x=3l+1,l∈Z},集合S={x│x=6m 2020-08-01 …
英文单词分类填空动物类1.O()t()p()s2.k()t()e()3.l()b()t()r4.a( 2021-02-05 …