Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-06-2005
eljuan eljuan is offline
Registrado
 
Registrado: jun 2005
Posts: 3
Poder: 0
eljuan Va por buen camino
Unhappy ayuda urgente¡¡ como imprimo y guardo timage

hola que tal¡¡
espero y me puedan ayudar, necesito imprimir y guardar varios timages colocados sobre la forma asi como tambien algunas lineas generadas en canvas.
anexo el codigo del programa, dicho programa pretende ser un editor de mapas conceptuales. y por tal motivo necesito guardar e imprimir. saben necesito ayuda lo mas pronto posible ya que dicho programa es la calificacion semestral de la universidad y estoy a punto de entregar dicho programa en un par de dias.

cualquier ayuda y/o opnion sera bienvenida y muy agradecida

Código Delphi [-]
  unit proyecto;
 interface
 uses
   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
   Dialogs, StdCtrls, ExtCtrls, Menus;
 
 type
   TForm1 = class(TForm)
     Button1: TButton;
     Button2: TButton;
     Button3: TButton;
     Edit1: TEdit;
     Button4: TButton;
     PrintDialog1: TPrintDialog;
     MainMenu1: TMainMenu;
     Archivo1: TMenuItem;
     Abrir1: TMenuItem;
     Guardar1: TMenuItem;
     imprimir1: TMenuItem;
     Salir1: TMenuItem;
     procedure Button1Click(Sender: TObject);
     procedure Button2Click(Sender: TObject);
     procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
       Shift: TShiftState; X, Y: Integer);
     procedure Button3Click(Sender: TObject);
     procedure Button4Click(Sender: TObject);
     procedure Salir1Click(Sender: TObject);
     procedure imprimir1Click(Sender: TObject);
     procedure FormCreate(Sender: TObject);
   private
     Capturing:Boolean;
     MouseDownSpot:TPoint;
     NumFiguras:Integer;
     procedure _IMGMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
     procedure _IMGMouseUp(Sender: TObject; Button: TMouseButton;  Shift: TShiftState; X, Y: Integer);
     procedure _IMGMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
     procedure _IMGMouseMove1(Sender: TObject; Shift: TShiftState; X, Y: Integer);
     procedure _IMGMouseUp1(Sender: TObject; Button: TMouseButton;  Shift: TShiftState; X, Y: Integer);
     procedure _IMGMouseDown1(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    
   public
     { Public declarations }
   end;
 var
   Form1: TForm1;
    NumFiguras: integer;
    elipse:TShape;
    edit_elipse:tedit;
    rec:TShape;
    edit_rec:tedit;
 implementation
 {$R *.dfm}
 
 procedure TForm1.Button1Click(Sender: TObject);
 begin
   // Crear un componentes
   edit_elipse:=tedit.Create(self);
   edit_elipse.Parent:=self;
   edit_elipse.BorderStyle:=bsnone;
   elipse := TShape.Create(Self);
   elipse.Parent := Self;
   // Posicion
   elipse.Top := 100;
   elipse.Left := 100;
   edit_elipse.Top:=elipse.Top +20;
   edit_elipse.Left:=elipse.Left+20;
   // Tamaño
   elipse.Height := 50;
   elipse.Width := 100;
   edit_elipse.height:=20;
   edit_elipse.Width:=70;
   // Tipo de elemento
   elipse.Shape := TShapeType(stEllipse);
   // Asignar para que pueda arrastrarse
   elipse.OnMouseMove := _IMGMouseMove;
   elipse.OnMouseDown := _IMGMouseDown;
   elipse.OnMouseUp := _IMGMouseUp;
 
   edit_elipse.OnMouseDown := _IMGMouseDown;
   edit_elipse.OnMouseMove := _IMGMouseMove;
   edit_elipse.OnMouseUp := _IMGMouseUp;
   // Otras propiedades
   elipse.Cursor := crHandPoint;
   elipse.Brush.Color := RGB(120,250,23);
   edit_elipse.Brush.Color:=rgb(120,250,23);
   edit_elipse.Cursor:=crHandPoint;
 end;
  
 procedure TForm1._IMGMouseDown(Sender: TObject; Button: TMouseButton;  Shift: TShiftState; X, Y: Integer);
 begin
   Capturing := true;
   MouseDownSpot.X := x;
   MouseDownSpot.Y := Y;
  
 
 end;
 procedure TForm1._IMGMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
 begin
     edit_elipse.left:=elipse.left+15;
     edit_elipse.top:=elipse.top+15;
     if Capturing then begin
     TWinControl(Sender).Left := TWinControl(Sender).Left - (MouseDownSpot.x - x);
     TWinControl(Sender).Top := TWinControl(Sender).Top - (MouseDownSpot.y - y);
   end;
 
 end;
 procedure TForm1._IMGMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
 begin
   if Capturing then begin
     ReleaseCapture;
     Capturing := false;
     TWinControl(Sender).Left := TWinControl(Sender).Left - (MouseDownSpot.x - x);
     TWinControl(Sender).Top := TWinControl(Sender).Top - (MouseDownSpot.y - y);
   end;
 
 end;
  
 procedure TForm1.Button2Click(Sender: TObject);
 
 begin
   // Crear un componentes
   edit_rec:=tedit.Create(self);
   edit_rec.Parent:=self;
   edit_rec.BorderStyle:=bsnone;
   rec := TShape.Create(Self);
   rec.Parent := Self;
   // Posicion
   rec.Top := 100;
   rec.Left := 100;
   edit_rec.Top:=rec.Top +20;
   edit_rec.Left:=rec.Left+20;
   // Tamaño
   rec.Height := 50;
   rec.Width := 100;
   edit_rec.height:=20;
   edit_rec.Width:=70;
   // Tipo de elemento
   rec.Shape := TShapeType(stRoundRect);
   // Asignar para que pueda arrastrarse
   rec.OnMouseMove := _IMGMouseMove1;
   rec.OnMouseDown := _IMGMouseDown1;
   rec.OnMouseUp := _IMGMouseUp1;
 
   edit_rec.OnMouseDown := _IMGMouseDown;
   edit_rec.OnMouseMove := _IMGMouseMove;
   edit_rec.OnMouseUp := _IMGMouseUp;
   // Otras propiedades
   rec.Cursor := crHandPoint;
   rec.Brush.Color := RGB(120,250,23);
   edit_rec.Brush.Color:=rgb(120,250,23);
   edit_rec.Cursor:=crHandPoint;
 end;
 procedure TForm1._IMGMouseDown1(Sender: TObject; Button: TMouseButton;  Shift: TShiftState; X, Y: Integer);
 begin
   Capturing := true;
   MouseDownSpot.X := x;
   MouseDownSpot.Y := Y;
  
 
 end;
 procedure TForm1._IMGMouseMove1(Sender: TObject; Shift: TShiftState; X, Y: Integer);
 begin
     edit_rec.left:=rec.left+15;
     edit_rec.top:=rec.top+15;
     if Capturing then begin
     TWinControl(Sender).Left := TWinControl(Sender).Left - (MouseDownSpot.x - x);
     TWinControl(Sender).Top := TWinControl(Sender).Top - (MouseDownSpot.y - y);
   end;
 
 end;
 procedure TForm1._IMGMouseUp1(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
 begin
   if Capturing then begin
     ReleaseCapture;
     Capturing := false;
     TWinControl(Sender).Left := TWinControl(Sender).Left - (MouseDownSpot.x - x);
     TWinControl(Sender).Top := TWinControl(Sender).Top - (MouseDownSpot.y - y);
   end;
 
 end;
  
 
 procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
   Shift: TShiftState; X, Y: Integer);
 begin
 if ssLeft in Shift then
     self.canvas.moveto(x,y);
   if ssRight in Shift then
     self.canvas.lineto(x,y);
 canvas.TextOut(x,y,edit1.text);
 end;
 procedure TForm1.Button3Click(Sender: TObject);
 begin
 edit1.Visible:=true;
 button4.Visible:=true;
 end;
 procedure TForm1.Button4Click(Sender: TObject);
 begin
 edit1.Visible:=false;
 button4.Visible:=false;
 end;
 procedure TForm1.Salir1Click(Sender: TObject);
 begin
   close;
 end;
 procedure TForm1.imprimir1Click(Sender: TObject);
 begin
 PrintDialog1.Execute;
 end;
 procedure TForm1.FormCreate(Sender: TObject);
 begin
 end;
 end.

Última edición por Neftali [Germán.Estévez] fecha: 13-06-2005 a las 10:06:11. Razón: Añadir TAG's
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 10:41:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi