D dyf Unregistered / Unconfirmed GUEST, unregistred user! 2002-05-24 #1 如何将TMemo的内容画到一个TBitmap上 Memo.Paintto(Bitmap.Canvas.Handle,0,0)不成
M MilkRoad Unregistered / Unconfirmed GUEST, unregistred user! 2002-05-24 #2 procedure TForm1.Button1Click(Sender: TObject); var bm: TBitmap; DC: HDC; begin bm := TBitmap.Create; DC := GetWindowDC(memo1.Handle); bm.Width := memo1.Width; bm.Height := memo1.Height; bitblt(bm.canvas.handle, 0, 0, memo1.width, memo1.height, DC, 0, 0, SRCCOPY); bm.SaveToFile('f:/dddd.bmp'); bm.Free; ReleaseDC(memo1.handle, DC); end;
procedure TForm1.Button1Click(Sender: TObject); var bm: TBitmap; DC: HDC; begin bm := TBitmap.Create; DC := GetWindowDC(memo1.Handle); bm.Width := memo1.Width; bm.Height := memo1.Height; bitblt(bm.canvas.handle, 0, 0, memo1.width, memo1.height, DC, 0, 0, SRCCOPY); bm.SaveToFile('f:/dddd.bmp'); bm.Free; ReleaseDC(memo1.handle, DC); end;
D dyf Unregistered / Unconfirmed GUEST, unregistred user! 2002-05-24 #3 承蒙回顾,十分感谢,这样是可以的,其实我真正想知道 SendMessage(bm.Handle,WM_PAINT,DC,0) ; 为什么不行, TEdit, TMemo这些window控件都是这模样,请指教
承蒙回顾,十分感谢,这样是可以的,其实我真正想知道 SendMessage(bm.Handle,WM_PAINT,DC,0) ; 为什么不行, TEdit, TMemo这些window控件都是这模样,请指教
X xianjun Unregistered / Unconfirmed GUEST, unregistred user! 2002-05-26 #5 如果要把所有内容都画到TBitmap上,就要自己动手,一行行的TextOut到Bitmap上去了。 有几个可以参考一下的贴子: 请问如果打印memo里的内容? http://www.delphibbs.com/delphibbs/DispQ.asp?LID=514923 我想把窗体上的内容,包括edit,memo里的东西都打印出来我该怎么写代码呀,是一句form.print就可以吗?? http://www.delphibbs.com/delphibbs/DispQ.asp?LID=547024
如果要把所有内容都画到TBitmap上,就要自己动手,一行行的TextOut到Bitmap上去了。 有几个可以参考一下的贴子: 请问如果打印memo里的内容? http://www.delphibbs.com/delphibbs/DispQ.asp?LID=514923 我想把窗体上的内容,包括edit,memo里的东西都打印出来我该怎么写代码呀,是一句form.print就可以吗?? http://www.delphibbs.com/delphibbs/DispQ.asp?LID=547024
S skyweb Unregistered / Unconfirmed GUEST, unregistred user! 2002-05-26 #6 SendMessage(bm.Handle,WM_PAINT,DC,0) ; 只是一个通知消息,告诉bm这个窗口:“喂~~!老兄,你该重画你自已了!!!”, 然后bm开始调用TextOut,BitBlt等函数,把自己画了出来。 一个TMemo控件实际上是对Windows Edit标准控件的包装, 而Windows Edit知道怎么样画出自己来,只是只限于在自己的HDC上。
SendMessage(bm.Handle,WM_PAINT,DC,0) ; 只是一个通知消息,告诉bm这个窗口:“喂~~!老兄,你该重画你自已了!!!”, 然后bm开始调用TextOut,BitBlt等函数,把自己画了出来。 一个TMemo控件实际上是对Windows Edit标准控件的包装, 而Windows Edit知道怎么样画出自己来,只是只限于在自己的HDC上。