Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 25-06-2010
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.210
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Un proyecto con tres TImage un Edit y un botón.
Los TImage deben tener una imagen cargada previa.

Código:
#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"


// IMPORTANTE:
// Para poder usar la función AlphaBlend del API tenemos que añadir
// msimg32.lib al proyecto:
// Añadir "$(BCB)\lib\PSDK" al library path en opciones de proyecto.

#pragma link "msimg32.lib"

TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
  : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
  BLENDFUNCTION xBlend;
  int ini,iAncho,iAlto,Alpha;
  Graphics::TBitmap *aBitmap1, *aBitmap2, *aBitmap3;

  iAncho = Image1->Width;
  iAlto = Image1->Height;
  aBitmap1 = new Graphics::TBitmap;
  aBitmap2 = new Graphics::TBitmap;
  aBitmap3 = new Graphics::TBitmap;
  aBitmap1->Assign(Image1->Picture->Graphic);
  aBitmap2->Assign(Image2->Picture->Graphic);
  aBitmap3->Width = iAncho;
  aBitmap3->Height =iAlto;
  ini = GetTickCount();
  aBitmap3->Assign(aBitmap1);
  xBlend.BlendOp = AC_SRC_OVER;
  xBlend.BlendFlags = 0;
  Alpha = StrToInt(Edit1->Text);
  xBlend.SourceConstantAlpha = Alpha;
  xBlend.AlphaFormat = 0;
  AlphaBlend(aBitmap3->Canvas->Handle,0,0,iAncho,iAlto,aBitmap2->Canvas->Handle,0,0,iAncho,iAlto,xBlend);
  Image3->Canvas->Draw(0,0,aBitmap3);
  Caption = IntToStr(GetTickCount() - ini)+" milisegundos por frame " + IntToStr(Alpha);
}
//---------------------------------------------------------------------------
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
Problem con AlphaBlend y forms embebidos old_martinez Varios 1 12-03-2009 20:53:05
AlphaBlend aeff API de Windows 10 30-11-2008 14:10:25
Imagenes Nomad Varios 1 04-06-2007 22:39:01
Aplicar AlphaBlend pero a un componente quetzal Varios 1 19-09-2004 09:56:24
Imagenes GIF NuncaMas Gráficos 1 04-12-2003 22:20:38


La franja horaria es GMT +2. Ahora son las 12:24:11.


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