• Jueves 14 de Noviembre de 2024, 17:15

Autor Tema:  Namedeobjectoclick(tobject *sender)  (Leído 1245 veces)

MakerCodes

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Namedeobjectoclick(tobject *sender)
« en: Jueves 21 de Junio de 2007, 06:15 »
0
:huh: (Como hacerlo en Builder C++)

Imagino que todos ustedes alguna vez han querido usar un grupo de objetos (sean botones, imagenes o labes) que les permita hacer una llamada al evento OnClick, sin embargo para mi es algo tedioso tener que escribir codigo para cada uno de ellos, ¿habria manera de generar algun codigo como visual basic donde se utiliza la variable "index" como parte de la identificacion de una matriz de objetos? si existe, como lo podria hacer en builder, ya que solo me proporciona la variable "Sender".
Los minutos serán eternos, mientras los segundos no los alcancen.

kati

  • Nuevo Miembro
  • *
  • Mensajes: 24
    • Ver Perfil
Re: Namedeobjectoclick(tobject *sender)
« Respuesta #1 en: Jueves 21 de Junio de 2007, 16:32 »
0
buenas!!
te dejo un ejemplo dónde se utiliza un array de labels....luego lo adaptasss.....
 :lightsabre: espero que te sea de ayuda..
Un saludo...
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.

MakerCodes

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Namedeobjectoclick(tobject *sender)
« Respuesta #2 en: Viernes 22 de Junio de 2007, 05:19 »
0
Hola a todos, ya voy aprendiendo algo, de lo que visto en el manual de C++ Builder, eso si, no se mucho de ingles, pero como todos saben: los codigos no tienen idioma, asi que aqui les dejo lo que encontre:


Suponiendo que creas 3 Labels en tu Form en el .h tendrias lo siguiente:

Código: Text
  1.  
  2. //---------------------------------------------------------------------------
  3.  
  4. #ifndef Unit1H
  5. #define Unit1H
  6. //---------------------------------------------------------------------------
  7. #include <Classes.hpp>
  8. #include <Controls.hpp>
  9. #include <StdCtrls.hpp>
  10. #include <Forms.hpp>
  11. //---------------------------------------------------------------------------
  12. class TForm1 : public TForm
  13. {
  14. __published:  // IDE-managed Components
  15.         TLabel *Label1;
  16.         TLabel *Label2;
  17.         TLabel *Label3;
  18.  
  19. //-> Pero ten en cuenta que tendras que declarar tu propio evento Click, que no es dificil, solo te copias uno y le cambias nombre.
  20.         void __fastcall MiEventoClick(TObject *Sender);
  21.         void __fastcall Reset();
  22.  
  23. private:  // User declarations
  24. public:    // User declarations
  25.         __fastcall TForm1(TComponent* Owner);
  26. };
  27. //---------------------------------------------------------------------------
  28. extern PACKAGE TForm1 *Form1;
  29. //---------------------------------------------------------------------------
  30. #endif
  31.  
  32.  
  33.  


MiEventoClick en el .cpp quedaria como sigue:

Código: Text
  1.  
  2. void __fastcall TForm1::MiEventoClick(TObject *Sender)
  3. {
  4.         Reset();
  5.  
  6.         if (Sender == Label1) Label1->Font->Style = TFontStyle()<<fsBold;
  7.         if (Sender == Label2) Label1->Font->Style = TFontStyle()<<fsBold;
  8.         if (Sender == Label3) Label1->Font->Style = TFontStyle()<<fsBold;
  9.  
  10. }
  11.  
  12. //-> Eso si, Sender no funciona con SWITCH.
  13.  
  14. void __fastcall TForm1::Reset()
  15. {
  16.         Label1->Font->Style = TFontStyle();
  17.         Label2->Font->Style = TFontStyle();
  18.         Label3->Font->Style = TFontStyle();
  19. }
  20.  
  21.  
  22.  


Tambien lo puedes hacer con MouseMove(TObject *Sender) para ver mas rapido dicho efecto.

 
Y recuerda, de bit en bit se llenan las unidades  :D
Los minutos serán eternos, mientras los segundos no los alcancen.