S.A.
Richedit nesnesinin zeminine backgroun olarak resim eklenebilirmi. Yardımcı olursanız sevinirim.
Memo yada Richedit zeminine resim
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Memo yada Richedit zeminine resim
Procedure Forum.Imza(Sender: TObject)
Begin
ShowMessage('Her türlü fikire, Her zaman açığım')
End;
Begin
ShowMessage('Her türlü fikire, Her zaman açığım')
End;
Re: Memo yada Richedit zeminine resim
aşağıdaki kodun çalışıp çalışmadığını bilmiyorum.
formunuza bir richedit, bir image bir de button koyup button click olayına aşağıdaki kodu yazın
kodda richedit nesnesi richedit1, image nesnesi de image1 olarak geçmiş.
denedikten spnra çalışıp çalışmadığını haber verirseniz sevinirim.
formunuza bir richedit, bir image bir de button koyup button click olayına aşağıdaki kodu yazın
kodda richedit nesnesi richedit1, image nesnesi de image1 olarak geçmiş.
Kod: Tümünü seç
procedure TForm1.Button2Click(Sender: TObject);
var
imagecanvas: TCanvas;
fmt: TFormatRange;
begin
imagecanvas := image1.canvas;
with fmt do begin
hdc:= imagecanvas.handle;
hdcTarget:= hdc;
// rect needs to be specified in twips (1/1440 inch) as unit
rc:= Rect( 0, 0,
imagecanvas.cliprect.right * 1440 div pixelsperinch,
imagecanvas.cliprect.bottom * 1440 div pixelsperinch
);
rcPage:= rc;
chrg.cpMin := 0;
chrg.cpMax := richedit1.GetTextLen;
end;
SetBkMode( imagecanvas.Handle, TRANSPARENT );
richedit1.perform( EM_FORMATRANGE, 1, integer( @fmt ));
// next call frees some cached data
richedit1.perform( EM_FORMATRANGE, 0, 0 );
image1.refresh;
// refresh is necessary since the control only refreshes automatically
// if a canvas method is used to change its content.
end;
denedikten spnra çalışıp çalışmadığını haber verirseniz sevinirim.
Re: Memo yada Richedit zeminine resim
İlgin için teşekkür ederim ancak TFormatrange için uses a neyi eklemem gerektiğini bulmadım ve ayrıca hdc,hdcTarget gibi ve dahada değişkenlerin tipi de belli değil aslında tiplerin ne olduğu anlaşılıyor ama TFormatrange ne olduğunu çözemedim. Özetle çalışmadı. Ancak ilgine teşekkür ederim.
Procedure Forum.Imza(Sender: TObject)
Begin
ShowMessage('Her türlü fikire, Her zaman açığım')
End;
Begin
ShowMessage('Her türlü fikire, Her zaman açığım')
End;
Re: Memo yada Richedit zeminine resim
Ayrıca şu çözemediğim tformatrange kelimesi üzerine bir arama yapınca benze konular ve kodlarla karşılaştım. ama hepsi tam tersi işlem görev görüyor. Yani richedit teki yazıyı bitmap üzerine yazdırıyor. Senin verdiğin kodda aynı işi yapıyor. **** ve tformatrange için uses kısmına RichEdit eklemek gerekiyormuş. forma richedit1 nesnesi eklemen yetmiyor yani.
Procedure Forum.Imza(Sender: TObject)
Begin
ShowMessage('Her türlü fikire, Her zaman açığım')
End;
Begin
ShowMessage('Her türlü fikire, Her zaman açığım')
End;