怎样才能实现在ttabsheet上面画图的功能,请详细说明(包括在加什么控件、或者在什么事件里或函数里加什么语句)!急需!谢谢!

解决方案 »

  1.   

    如果是事先画好可以用quickreport的qrshape画
    如果是在程序中动态的画用canvas
      

  2.   

    vPageControl.Images := ...
    Images里边放上圆形和正方形,到时候,只要换ImageIndex就可以了。
    ____________________________________________________            弱水三千,我只取一瓢饮
      

  3.   

    在里面放一个TPaintBox,在TPaintBox里面操作,试一下:
    pb: TPaintBox;
    ...
    procedure TForm1.pbMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      pb.Repaint;
      pb.Canvas.Ellipse(10, 10, X, Y);
      pb.Canvas.Rectangle(200, 200, X, Y);
    end;
      

  4.   

    像上面的老兄,加一个Tpaintbox吧,或者加一个image也可以,只要有canvas属性的几乎都可以
      

  5.   

    而且,我想让这个page显示出来的时候,就已经显示出圆和方形了!
      

  6.   

    procedure TForm1.PageControl1Change(Sender: TObject);
    begin
      image1.Canvas.Ellipse(0,0,50,50);
      image2.Canvas.Ellipse(0,0,50,50);
    end;procedure TForm1.PageControl1Enter(Sender: TObject);
    begin
      image1.Canvas.Ellipse(0,0,50,50);
      image2.Canvas.Ellipse(0,0,50,50);
    end;//这样,然后把image1和image2的transparent设置为true,就变成透明了
      

  7.   

    用image,然后把画的函数放到相应的事件中!!PageControl1Change//当你切换tabsheet时,发生这个事件,PageControl1Enter初始化时,获得了焦点,而触发这个事件,
      

  8.   

    procedure TForm1.PaintBox1Paint(Sender: TObject);
    begin
      //PaintBox1.Repaint;加这句会闪
      PaintBox1.Canvas.Ellipse(10, 10, 20, 20);
    end;