解决方案 »

  1.   

    用Memo显示图片,你可以自己改改这个控件,处理memo的 WM_Paint消息,画个图片。typeTMyMemo = class(TMemo)protectedprocedure WMPaint(var Message: TWMPaint); message WM_PAINT;end; procedure TMyMemo.WMPaint(var Message: TWMPaint);varMCanvas: TControlCanvas;DrawBounds : TRect;Begininherited;MCanvas:=TControlCanvas.Create;DrawBounds := ClientRect; // Work with temporary TRect record.TryMCanvas.Control:=Self;With MCanvas doBeginBrush.Color := clBtnFace;FrameRect( DrawBounds );InflateRect( DrawBounds, -1, -1);FrameRect( DrawBounds );FillRect ( DrawBounds );MoveTo ( 33, 0 );Brush.Color := clWhite;LineTo ( 33, ClientHeight );PaintImages;//定义的画图片过程end;finallyMCanvas.Free;End;end;  procedure TMyMemo.PaintImages;varMCanvas: TControlCanvas;DrawBounds : TRect;i, j : Integer;OriginalRegion : HRGN;ControlDC : HDC;beginMCanvas:=TControlCanvas.Create;DrawBounds := ClientRect; // Work with temporary TRect record.tryMCanvas.Control:=Self;ControlDC := GetDC ( Handle );MCanvas.Draw(0, 1, Application.Icon);finallyMCanvas.Free;end;end;
     
       
      

  2.   

    richview1.7 这个可以用于D7
    搜索一下吧, 
    www.playicq.com有下载,不过要帐号
      

  3.   

    procedure TForm1.Button2Click(Sender: TObject);
    var
          vc : TCanvas;
    begin
          vc := TCanvas.Create;
          vc.Handle := GetDC(RichEdit1.Handle);
          vc.Brush.Style := bsClear;
          vc.StretchDraw(Image1.ClientRect, Image1.Picture.Graphic);
    end;