Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

 
 
Herramientas Buscar en Tema Desplegado
  #7  
Antiguo 21-01-2012
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
No me había percatado de este tema hasta ahora. Voy a poner mi granito de arena.

En primer lugar y como solución sencilla sería llamar al evento OnChange cada vez que usemos la propiedad ActivePageIndex, de forma "manual". Tiene la ventaja de ser sencillo y comprenderse bien, pero no es automático:
Código:
PageControl1->ActivePageIndex = 3;
PageControl1Change(this);
Una segunda solución mas avanzada y parecida a la solución de roman y Neftali sería reescribir el método SetActivePageIndex de la clase TPageControl. Tiene la ventaja de automatizar el proceso, el evento OnChange se lanzará con cada asignación de ActivePageIndex:

Código:
// Nueva definición de SetActivePageIndex de la clase TPageControl
void __fastcall TPageControl::SetActivePageIndex(const int Value)
{
  if (Value > -1 && Value < PageCount)
    ActivePage = Pages[Value];
  else
    ActivePage = 0;

  if(OnChange) OnChange(this); // Lanzamos el Evento
}

// Asignación de ActivePageIndex 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  PageControl1->ActivePageIndex = 1;
}

// Evento OnChange
void __fastcall TForm1::PageControl1Change(TObject *Sender)
{
  ShowMessage("Eureca");
}

Saludos.
Responder Con Cita
 



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
OnChange elturu15 Varios 4 03-05-2011 17:51:54
Evento onChange en TImage MAXIUM Gráficos 3 08-03-2010 03:02:11
evento onchange de un dbedit ercrizeporta Varios 1 31-10-2006 14:09:38
Findfirst funciona cuando quiere rfernandez API de Windows 3 17-03-2005 11:35:43
OnChange en TListBox fedecm Varios 1 30-06-2004 17:24:32


La franja horaria es GMT +2. Ahora son las 19:54:56.


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