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

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-08-2011
ivantj24 ivantj24 is offline
Miembro
NULL
 
Registrado: feb 2011
Posts: 110
Poder: 14
ivantj24 Va por buen camino
funcion para no repetir codigo:(

Holas que tal comunidad, espero en este tema si me puedan ayudar ya que con los remobjects de plano nadie me ha respondido nada , bueno expongo el siguiente tema:

lo que sucede es que ya que ando metido de lleno en delphi y en la programacion, estoy buscando alternativas para ahorrarme codigo y de paso que sea mas profesional, si alguien me pudiera ayudar de antemano como siempre mucha sgracias.

lo que intento es que tengo 8 botones ocultos, quiero que al hacer click en un menu, se visualice una pestania del pagecontrol, en este caso al seleccionar 1 si esta visible otra que se oculte para darle paso a la que acabo de clickear, para dar una idea hice este codigo con solo 4 botones:
Código Delphi [-]
if button1.enabled = True then
 begin
  button1.visible:= true;
  button2.visible:= False;
  button3.visible:= False;
  button4.visible:= false;
 end
else if button2.enabled = true then
 begin
  button1.visible:= False;
  button2.visible:= True;
  button3.visible:= False;
  button4.visible:= false; 
 end
else if button3.enabled = true then
 begin
  button1.visible:= False;
  button2.visible:= False;
  button3.visible:= True;
  button4.visible:= false; 
 end
else if button4.enabled = tue then
 begin
  button1.visible:= False;
  button2.visible:= False;
  button3.visible:= False;
  button4.visible:= True; 
 end

este codigo funciona y siempre lo he hecho para este tipo de casos pero me doy cuenta que es demasiado codigo para 4 botones, y yo tengo 8 :S aparte despues haria lo mismo para diferentes pagecontrol :S, lo que requiero es una funcion, que al clickear envie un parametro y segun el parametro este solo sea el visible y todos los demas, en mi caso los 7 botones restantes se oculten, pero como lo mostre hace un momento no quiero repetir todo el codigo mencionando todos los botones ocultos y solo el que sera visible,

intente hacer un arreglo :S:S:S en donde meto todo el codigo de los componentes, pero es obvio que nunca funcionaria por que un componente creo, no puede ser colocado como un string, y despues hacer que funcione como un objeto :S

Código Delphi [-]
procedure TfrmPrincipal.PestaniaVisible(NoPestania : Integer);
var
  i : integer;
  Pestania : array[0..7] of Variant;
begin
  Pestania[0]:= dxRibbonPrincipalTab3.Visible;
  Pestania[1]:= dxRibbonPrincipalTab4.Visible;
  Pestania[2]:= dxRibbonPrincipalTab5.Visible;
  Pestania[3]:= dxRibbonPrincipalTab6.Visible;
  Pestania[4]:= dxRibbonPrincipalTab7.Visible;
  Pestania[5]:= dxRibbonPrincipalTab8.Visible;
  Pestania[6]:= dxRibbonPrincipalTab9.Visible;
  Pestania[7]:= dxRibbonPrincipalTab10.Visible;
  i:= 0;
  while i <= 7  do
    begin
      if i <> NoPestania then
        begin
          Pestania[i]:= False;
        end
      else
        Pestania[i]:= True;
      i:= i +1;
    end;
end;

era algo asi en donde en un arreglo guardaba las declaraciones de los botones, en mi caso son pestanias, de un pagecontrol, y segun el parametro que enviaba, esa pestanaia que estaba almacenada en el arreglo, lo pondria despues en True, si es que coincidia, sino pues se pondria en False, es obvio que nunca haria nada pro que primero lo pongo en string y despues lo pongo en True, sobreescribiendo el valor de un string a true, pero bueno esa fue un intento fallido y algo tonto, :S pero por lo menos lo intente, espero me puedan ayudar en esto por que no se como hacerle o si es que se puede hacer de esa forma, o si me tengo que conformar con todo el codigo de los if, o case :S que es lo mismo , espero me puedan ayudar o orientar se los agradeceria, saludos

Última edición por ecfisa fecha: 11-08-2011 a las 14:13:26. Razón: ETIQUETAS [DELPHI] [/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
funcion recursiva para este codigo ingabraham Varios 11 21-06-2011 18:01:07
Componente para buscar registros, para no repetir codigo. flystar Conexión con bases de datos 9 28-04-2010 23:16:15
Existe alguna tecnica para no repetir codigo? pablopessoa Varios 25 11-03-2010 00:28:41
funcion repetir string elcigarra OOP 2 20-03-2009 21:54:53
Problemas con la función MCISendString para reproducir/repetir archivos MIDI Black_Ocean Internet 2 27-03-2008 21:37:36


La franja horaria es GMT +2. Ahora son las 03:30:15.


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