Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-11-2016
compuin compuin is offline
Miembro
 
Registrado: oct 2010
Posts: 230
Poder: 16
compuin Va por buen camino
Gracias escfisa

Como llamo a la MakeSquare ?
Responder Con Cita
  #2  
Antiguo 02-11-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola
Cita:
Empezado por compuin Ver Mensaje
Como llamo a la MakeSquare ?
Tál como está en el mensaje anterior.

Por ejemplo, usando como lienzo un TPanel en lugar del Form
Código Delphi [-]
...
type
  TPanel = class(ExtCtrls.TPanel);  
  TForm1 = class(TForm) 
    btnStart: TButton;
    Panel1: TPanel;
    procedure btnStartClick(Sender: TObject);
    ...

implementation

procedure MakeSquares(aCanvas: TCanvas; const pInit: TPoint;
  const ncuad, size: Integer);
var
  x, y: Integer;
  p   : TPoint;
begin
  p.Y := pInit.Y;
  for y := 1 to ncuad do
  begin
    p.X := pInit.X;
    for x := 1 to y do
    begin
      aCanvas.Rectangle( p.X - 1, p.Y - 1, p.X + size, p.Y + size);
      Inc( p.X, size );
    end;
    Inc( p.Y, size);
  end;
end;

// Evento OnClick de un TButton
procedure TForm1.btnStartClick(Sender: TObject);
begin
  MakeSquares(Panel1.Canvas, Point( 70, 30 ), 7, 20);  // <-- AQUI LO ESTAS LLAMANDO
end;

...

Salida:


Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 02-11-2016 a las 14:09:08. Razón: agregar imágen
Responder Con Cita
  #3  
Antiguo 02-11-2016
compuin compuin is offline
Miembro
 
Registrado: oct 2010
Posts: 230
Poder: 16
compuin Va por buen camino
Gracias

Ya la pude llamar pero no me aparece dentro del Image sino en el formulario...como corrijo eso?
Responder Con Cita
  #4  
Antiguo 02-11-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por compuin Ver Mensaje
Gracias

Ya la pude llamar pero no me aparece dentro del Image sino en el formulario...como corrijo eso?
Código Delphi [-]
  MakeSquares( Image1.Canvas, Point( 70, 30 ),  7, 20 );

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 02-11-2016
compuin compuin is offline
Miembro
 
Registrado: oct 2010
Posts: 230
Poder: 16
compuin Va por buen camino
Asi lo hice

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, Buttons;

type
  TForm1 = class(TForm)
    Image1: TImage;
    BitBtn1: TBitBtn;

    procedure BitBtn1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

procedure MakeSquares(Image1: TCanvas; const pInit: TPoint;
  const ncuad, size: Integer);
var
  x, y: Integer;
  p   : TPoint;
begin
  p.Y := pInit.Y;
  for y := 1 to ncuad do
  begin
    p.X := pInit.X;
    for x := 1 to y do
    begin
      Image1.Rectangle( p.X - 1, p.Y - 1, p.X + size, p.Y + size);
      Inc( p.X, size );
    end;
    Inc( p.Y, size);
  end;
end;


{$R *.dfm}


procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  MakeSquares(Canvas, Point( 70, 30 ), 7, 20);  // <== AQUI LA ESTAS LLAMANDO
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  MakeSquares(Canvas, Point( 70, 30 ), 7, 20);  // <== AQUI LA ESTAS LLAMANDO
end;

end.

Y asi me aparece
Responder Con Cita
  #6  
Antiguo 02-11-2016
compuin compuin is offline
Miembro
 
Registrado: oct 2010
Posts: 230
Poder: 16
compuin Va por buen camino
Esta es la ventana con el Canvas
Imágenes Adjuntas
Tipo de Archivo: jpg Canvas.JPG (33,5 KB, 9 visitas)
Responder Con Cita
  #7  
Antiguo 02-11-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

No veo como te aparece, pero aquí te va un ejemplo en el que dibujo la figura en el TForm, en un TPanel y en un TImage:



Te adjunto el código fuente del ejemplo para que lo revises con tranquilidad.

Saludos
Archivos Adjuntos
Tipo de Archivo: zip compuin.zip (4,2 KB, 4 visitas)
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #8  
Antiguo 02-11-2016
compuin compuin is offline
Miembro
 
Registrado: oct 2010
Posts: 230
Poder: 16
compuin Va por buen camino
Muchas gracias.

Lo revisare
Responder Con Cita
Respuesta



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Copiar TLabel.Canvas sobre TBitmap.Canvas @CSE1970 Gráficos 2 23-10-2013 12:46:53
consejos sobre un grid perico OOP 4 18-02-2011 19:43:38
Como imprimir con precisión directamente sobre el Canvas de TPrinter Faust Impresión 1 28-01-2009 02:11:03
Consulta sobre Grid... oscarac Varios 2 27-12-2007 12:57:59
Duda sobre grid jmedina Varios 1 08-10-2004 12:22:08


La franja horaria es GMT +2. Ahora son las 15:26:55.


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