Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.23;
Скачать: CL | DM;

Вниз

Не нашел, как получить картинку TChart а...   Найти похожие ветки 

 
Тфьу   (2006-06-06 17:22) [0]

Есть сохранение в файл, есть копировать в клипбоард. А как просто получить в TBitmap?


 
Tonich ©   (2006-06-06 18:48) [1]

Chart1.SaveToBitmapFile();
первый нах..

видать ты его и не искал )


 
Tonich ©   (2006-06-06 18:51) [2]

а блин погодь всмысле загнать класс?


 
Kolan ©   (2006-06-06 22:05) [3]


> Тфьу   (06.06.06 17:22)

Я тоже не нашел. Делал так:
Сохранял
Chart1.SaveToBitmapFile();
а мотом загружал из файла. ..


 
Тфьу   (2006-06-07 11:19) [4]

Я так и делаю:
MyChart.SaveToBitmapFile(GetEnvironmentVariable("temp")+"\xxx.bmp");
Но у меня все внутри при этом переворачивается.
А еще у нас параноидальные администраторы. Чего-нибудь запретят и котенок станет песцом.


 
EvS ©   (2006-06-07 12:39) [5]

А через клипбоард чем не катит? Да и доступ к Canvas имеет место быть, можно прямо с нее вытянуть.


 
lookin ©   (2006-06-07 21:39) [6]

Поройся тут плз, я сейчас не могу расшифровать,

procedure TDataSheet.PrintOkButtonClick(Sender: TObject);
var i,j,n,numx,numy,w,h,xrange,yrange: integer;
   r,r2: TRect;
   b: TBitmap;
begin
 try
 case PrintIdentifier of
 0: for j:=0 to Length(Previews[0])-1 do
    for i:=0 to Length(Previews)-1 do begin
    r:=Rect(0,0,Printer.PageWidth,Printer.PageHeight);
    with Printer do begin BeginDoc;
    Canvas.StretchDraw(r,Previews[i][j].Picture.Graphic);
    EndDoc; end; end;
 1,2: begin r:=Rect(0,0,PrintChart.Width,PrintChart.Height);
      b:=TBitmap.Create; b.PixelFormat:=pf32bit;
      b.Width:=PrintChart.Width; b.Height:=PrintChart.Height;
      numx:=0; n:=PrintChart.Width;
      while n>PrintScrollBox.ClientWidth do begin
      n:=n-PrintScrollBox.ClientWidth; Inc(numx); end;
      numy:=0; n:=PrintChart.height;
      while n>PrintScrollBox.Clientheight do begin
      n:=n-PrintScrollBox.Clientheight; Inc(numy); end;
      w:=PrintScrollBox.ClientWidth; h:=PrintScrollBox.ClientHeight;
      xrange:=trunc((PrintScrollBox.HorzScrollBar.Range-
      PrintScrollBox.Width)/numx);
      yrange:=trunc((PrintScrollBox.VertScrollBar.Range-
      PrintScrollBox.Height)/numy);
      for i:=0 to numx do for j:=0 to numy do begin
      PrintScrollBox.HorzScrollBar.Position:=xrange*i;
      PrintScrollBox.VertScrollBar.Position:=yrange*j;
      PrintChart.Update;
      r2:=Rect(Abs(PrintChart.Left),Abs(PrintChart.Top),
      Abs(PrintChart.Left)+w,Abs(PrintChart.Top)+h);
      b.Canvas.CopyRect(r2,PrintChart.Canvas.ReferenceCanvas,r2); end;
      with Printer do begin BeginDoc;
      Canvas.StretchDraw(r,b); EndDoc; end; b.Free; end; end;
 except
 if ViewXInfo.Language="English" then
 MessageDlg("Printing error...",mtWarning,[mbOk],0);
 if ViewXInfo.Language="Russian" then
 MessageDlg("Îøèáêà ïå÷àòè...",mtWarning,[mbOk],0); end;
 for i:=0 to Length(Previews)-1 do
 for j:=0 to Length(Previews[i])-1 do
 if Assigned(Previews[i][j]) then begin
 Previews[i][j].Parent:=nil; Previews[i][j].Free; end; Previews:=nil;
 PrintChart.FreeAllSeries; PrintChart.Parent:=nil;
 PageControl.Pages[0].TabVisible:=true;
 PageControl.Pages[1].TabVisible:=true;
 PageControl.Pages[2].TabVisible:=true;
 PageControl.Pages[3].TabVisible:=false;
 PrintButton.Enabled:=true;
 (Owner as TViewX).CloseFileButton.Enabled:=true;
 PageControl.ActivePageIndex:=0; PageControl.OnChange(PageControl);
end;



Страницы: 1 вся ветка

Текущий архив: 2006.07.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
15-1150975443
NailMan
2006-06-22 15:24
2006.07.23
Нужна прога для передачи файлов...


3-1148369797
Андрей2005
2006-05-23 11:36
2006.07.23
Как обнулить автоинкрементное поле в таблице Paradox


15-1150829013
DillerXX
2006-06-20 22:43
2006.07.23
Вы случано не знаете,


8-1139289302
Gorger
2006-02-07 08:15
2006.07.23
Наложение текстуры на форму и станд. контролы


3-1148300987
Cherman
2006-05-22 16:29
2006.07.23
delphi oracle