Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

 
 
Herramientas Buscar en Tema Desplegado
  #13  
Antiguo 27-06-2006
Deiv Deiv is offline
Miembro
 
Registrado: jul 2005
Ubicación: La Paz - Bolivia
Posts: 364
Poder: 21
Deiv Va por buen camino
Arrow

Probé el consejo de Seoane con el TImageList, y modifiqué un poco el código para transparentarlo de la siguiente forma:
Código Delphi [-]
var
  Bitmap: TBitmap;
begin
  Bitmap:= TBitmap.Create;
  try
    BitMap.LoadFromFile(FileName);
    ImageList1.Width:= BitMap.Width div 10; // 10 Elementos
    ImageList1.Height:= BitMap.Height;
    ImageList1.BkColor:=clNone;
    ImageList1.BlendColor:= clNone;
    ImageList1.DrawingStyle:= dsTransparent;
    ImageList1.Masked:= True;
    ImageList1.AddMasked(Bitmap, Bitmap.Canvas.Pixels[0,0]);
  finally
    BitMap.Free;
  end;
end;
Funciona bien.
He cargado 2 PaintBox capturando en ellos diferentes trozos del BitMap que tengo:
Código Delphi [-]
   ImageList1.Draw(PaintBox1.Canvas,0,0,0);
   ImageList1.Draw(PaintBox2.Canvas,0,0,1);
Todo bien, he intendado MOVERLOS y cruzar a ambos manteniendo su transparencia con TTimer, y ahí tengo un problemita del cual
no me doy cuenta, y requiero de vuestra ayuda:
Código Delphi [-]
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  PaintBox1.Left:=PaintBox1.Left+2;
  PaintBox1.Repaint;
  ImageList1.Draw(PaintBox1.Canvas,0,0,0);
  PaintBox2.Left:=PaintBox2.Left-2;
  PaintBox2.Repaint;
  ImageList1.Draw(PaintBox2.Canvas,0,0,1);
end;
Necesitaba sobreponer uno sobre el otro en el momento de cruce transparentes. Arriba lo que hace es uno sobrepone al otro
pero sin transparentarlo (lo tapa, o lo cubre). Es decir necesito en el momento de cruce dibujar uno y encima el otro, pero
mostrando ambos ¿Donde voy mal?
Pd.- Tal vez no me estoy dejando entender si el código de arriba no estuviera en un TTimer, y los ubico en posición de cruce
(left) me muestra bien a ambos (sin TTimer) es lo que requiero en realidad pero que eso se vea así al momento de cruce.
Gracias y saludos
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
manejar directorios XxEdwinxX Varios 1 20-12-2005 22:26:28
como manejar el datapicker jas010 Conexión con bases de datos 7 04-04-2005 21:32:40
Manejar subtitulos... SGOFx Varios 6 05-02-2005 20:09:16
Manejar dirección API cardomjar Varios 7 08-12-2004 12:13:59
Manejar Componetes sergio_015 OOP 12 25-11-2004 11:01:47


La franja horaria es GMT +2. Ahora son las 10:09:40.


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