Ver Mensaje Individual
  #4  
Antiguo 28-03-2008
Avatar de grandmasterdari
grandmasterdari grandmasterdari is offline
Miembro
 
Registrado: ene 2008
Posts: 46
Reputación: 0
grandmasterdari Va por buen camino
Post Aclaracion 01

tienes razon, no queria meter el codigo porque es c++ y no quiero asustar pero un ejemplo en delphi me viene bien

este es el archivo de cabecera (.h)
Código:
//---------------------------------------------------------------------------

#ifndef Image1H
#define Image1H
//---------------------------------------------------------------------------
#include <SysUtils.hpp>
#include <Classes.hpp>
#include <Controls.hpp>
#include <ExtCtrls.hpp>
//---------------------------------------------------------------------------
class PACKAGE TImage1 : public TImage
{
private:
protected:
public:
    __fastcall TImage1(TComponent* Owner);
__published:
//aqui van mis supuestos eventos personalizado (definicion)
    void __fastcall Image1MouseEnter(TObject *Sender);
    void __fastcall Image1Click(TObject *Sender);
};
//---------------------------------------------------------------------------
#endif
este es el codigo (.cpp)
Código:
//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Image1.h"
#pragma package(smart_init)
//---------------------------------------------------------------------------
// ValidCtrCheck is used to assure that the components created do not have
// any pure virtual functions.
//

static inline void ValidCtrCheck(TImage1 *)
{
    new TImage1(NULL);
}
//---------------------------------------------------------------------------
__fastcall TImage1::TImage1(TComponent* Owner)
    : TImage(Owner)
{
}
//---------------------------------------------------------------------------
namespace Image1
{
    void __fastcall PACKAGE Register()
    {
        TComponentClass classes[1] = {__classid(TImage1)};
        RegisterComponents("Standard", classes, 0);
    }
}
//---------------------------------------------------------------------------

//---------------------------------------------------------------------------
//aquie van la implementacion de mis eventos (no creo que sea asi)

void __fastcall TImage1::Image1MouseEnter(TObject *Sender)
{
    this->Visible=false;
}
void __fastcall TImage1::Image1Click(TObject *Sender)
{
    this->Visible=false;
}
este codigo aparece por defecto, excepto los metodos "image1mouseenter e image1click" que fueron creados por mi como un intento de implementacion de eventos personalizados

despues de crear mi nueva clase, debo llamarla desde otro lado, la instancio de esta forma

Código:
    TImage1 *temp= new TImage1(Owner);//tambien coloque como parametro Form1, Application y no vi cambios
// ahora modifico los atritutos para acomodar
    temp->Left=2;
    temp->Top=2;
    temp->Picture->LoadFromFile("00060001.BMP");
    temp->Width=200;
    temp->Height=200;
    temp->Parent=Form1; // indica que form1 es el padre, y hace que temp se vuelva visible
espero que sirva
Responder Con Cita