Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-03-2016
Adrian Martinez Adrian Martinez is offline
Registrado
NULL
 
Registrado: mar 2016
Posts: 6
Poder: 0
Adrian Martinez Va por buen camino
Question Menu Principal

Hola a todos! desde ya quiero darles las gracias por su ayuda
Bien aqui la cuestion, tengo un formulario principal en el cual se ejecutan formularios Hijos, este formulario principal tiene una barra de botones, donde al ejecutarse el formulario hijo, se le asignan las tareas (nuevo, guardar eliminar, modificar, etc) los botones tienen asignados en la propiedad action la respectiva funcion, que estoy administrando con el Action Manager. Para que esta barra de Botones responda a un formulario en particular, cada vez que se activa o desactiva un formulario, cambio el datasource en el ActionManager para que cumpla dicha funcion. Se Realiza con el Siguiente Procedimiento:

Código Delphi [-]
Procedure SetiarBarra(MyDataSource:TDataSource; bCarga:Boolean);
var i:Integer;
begin
  With FrmMain do
    begin
      if bCarga = True then
        begin
          for i := 0 to ActionManager.ActionCount -1 do
            begin
              if UpperCase(ActionManager.Actions[i].Category)=UpperCase('DataSet')then
                TDataSetAction(ActionManager.Actions[i]).DataSource := MyDataSource;
            end;
        end

      else
        begin
          for i := 0 to ActionManager.ActionCount -1 do
            begin
              TDataSetAction(ActionManager.Actions[i]).OnExecute := Nil;
              if UpperCase(ActionManager.Actions[i].Category)=UpperCase('DataSet')then
               TDataSetAction(ActionManager.Actions[i]).DataSource := Nil;
            end;
        end;
    end;
end;

a este procedimiento lo llamo desde los formularios Hijos, en los OnActivate (SetiarBarra(DataSet, True)) y OnDesactivate(SetiarBarra(nil, False)).

Al crear el primer formulario asigna las tareas sin problema, el inconveniente se presenta cuando abro otro formulario, ya que nunca vuelve a reasignar el Datasource por lo tanto siempre los botones responden a la accion del primer formulario ejecutado, como no hay ningun error, no se que mas hacer Espero haber sido lo suficientemente claro, gracias nuevamente y saludos!

Última edición por roman fecha: 08-03-2016 a las 19:44:28. Razón: Agregar etiqueta [delphi]
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
Barra sobre el menu principal lbidi Varios 8 12-03-2015 21:30:36
imagenes en el menu principal josi Conexión con bases de datos 1 27-03-2008 09:57:48
Cambiar fondo de menu principal zugazua2001 Varios 0 30-06-2005 06:23:50
Maximizar Form del Menu Principal... BlueSteel Varios 2 10-01-2005 15:51:39


La franja horaria es GMT +2. Ahora son las 06:51:37.


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