Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-06-2012
Avatar de Jere_84
Jere_84 Jere_84 is offline
Miembro
NULL
 
Registrado: sep 2011
Ubicación: Córdoba, Argentina
Posts: 214
Poder: 0
Jere_84 cantidad desconocida en este momento
Recorrer Page Control

Hola, estoy haciendo un procedure que valida campos vacíos recorriendo los componentes del Form y haciendo foco en el TDBEdit cuando esta vació. El problema surge si el componente se encuentra dentro de un TPageControl y hay que hacer el Set focus cuando Tab del PageControl no esta en foco.

Alguien sabe como podría obtener los componentes hijos y que frene cuando lo encuentre o algo así?

Slds.

Código Delphi [-]
for a:=0 to TJfPageControl(vForm.Components[i]).Tabs[a].Index do
begin
 // detener en la pagina donde esta el TDbedit
end;
Responder Con Cita
  #2  
Antiguo 05-06-2012
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola Jere_84, al recorrer cada TabSheet puedes obtener el TabIndex donde haya un Edit vacio.

Código Delphi [-]
//con el pagecontrol normal sería algo así
 sheet : TTabSheet;
begin
 for i:=0 to PageControl1.ControlCount-1 do
 begin
  sheet := TTabSheet(PageControl1.Controls[i]);
  for a:=0 to sheet.ControlCount-1 do
   begin
    if sheet.Controls[a] is TEdit then
     if TEdit(sheet.Controls[a]).Text = '' then
      begin
       PageControl1.TabIndex := sheet.TabIndex;
       TEdit(sheet.Controls[a]).SetFocus;
       exit;
      end;
   end;
 end;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #3  
Antiguo 05-06-2012
Avatar de Jere_84
Jere_84 Jere_84 is offline
Miembro
NULL
 
Registrado: sep 2011
Ubicación: Córdoba, Argentina
Posts: 214
Poder: 0
Jere_84 cantidad desconocida en este momento
Cita:
Empezado por Caro Ver Mensaje
Hola Jere_84, al recorrer cada TabSheet puedes obtener el TabIndex donde haya un Edit vacio.

Código Delphi [-]
//con el pagecontrol normal sería algo así
 sheet : TTabSheet;
begin
 for i:=0 to PageControl1.ControlCount-1 do
 begin
  sheet := TTabSheet(PageControl1.Controls[i]);
  for a:=0 to sheet.ControlCount-1 do
   begin
    if sheet.Controls[a] is TEdit then
     if TEdit(sheet.Controls[a]).Text = '' then
      begin
       PageControl1.TabIndex := sheet.TabIndex;
       TEdit(sheet.Controls[a]).SetFocus;
       exit;
      end;
   end;
 end;

Saluditos
Gracias caro, lo voy a probar!

Saludos!
Responder Con Cita
Respuesta



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
Foco en Page control valeria Varios 6 01-06-2015 16:29:49
page control pablo OOP 3 08-03-2005 17:31:09
Page control plano Al González OOP 3 08-07-2004 23:55:12
duda con componente page control hook Varios 3 25-05-2004 20:34:34
Eliminar un tabsheet de un Page Control apicito OOP 15 01-10-2003 05:46:18


La franja horaria es GMT +2. Ahora son las 01:45:54.


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