Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #33  
Antiguo 28-02-2015
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Las Palmas de G.C.
Posts: 1.372
Poder: 25
José Luis Garcí Va camino a la fama
Nuestro siguiente módulo es configuración, dándole al formulario los siguientes parámetros

Nombre UNIT UCONFIGURACION
Name=FConfiguracion
Caption=Configuración
Height=800
Width=1000
Position=PoScreenCenter
Shohint=True
KeyPreview=true

El módulo configuración sólo trabaja con tres paneles, nuestro botonera 1 que sólo contendrá el botón Salir y editar, eliminando el resto, el PanelOculto, con los botones Confirmar y cancelar para grabar los datos y el panel de datos, en el que muchos de ellos estarán des habilitados

Las secciones las he dividido con Groupbox, he usado separadores mediante simples etiquetas y bevels y por último he puesto un seleccionador con un radioGroup y para los colores he usado colorbox, por lo que estos junto al memo para el texto de la ley de protección de datos tendremos que controlarlos manualmente. Claro esta hay componentes que nos ahorrarían este trabajo, algunos de pagos y otros libres, teniendo yo algunos de ellos, pero como dije en este tutorial no usaremos más componentes que los estándar de Delphi.

El form quedaría así



y aquí tenéis el código completo

https://gist.github.com/anonymous/0c376637878de9278273

Vamos a comentar algunas parte del código, empecemos como controlar que nos muestre el texto y el color seleccionado en el memo y los colorbox para eso usamos el evento OnShow del formulario

Código Delphi [-]
procedure TFCONFIGURACION.FormShow(Sender: TObject);
//------------------------------------------------------------------------------
//***************************************************************[ OnShow ]*****
// Al mostrarse
//------------------------------------------------------------------------------
begin
   if not (DsPrincipal.DataSet.State in [dsEdit]) then
   begin
      if DM.IBDConfiguracionCOLOR_DISPONIBLE.Value<>'' then ColorBox1.Selected:=StringToColor(DM.IBDConfiguracionCOLOR_DISPONIBLE.Value);
      if DM.IBDConfiguracionCOLOR_NO_DISPONIBLE.Value<>'' then ColorBox2.Selected:=StringToColor(DM.IBDConfiguracionCOLOR_NO_DISPONIBLE.Value);
      if DM.IBDConfiguracionCOLOR_BLOQUEADA.Value<>'' then ColorBox3.Selected:=StringToColor(DM.IBDConfiguracionCOLOR_BLOQUEADA.Value);
      if DM.IBDConfiguracionLEY_PROTECCION_DATOS.Value<>'' then Memo1.Lines.Text:=DM.IBDConfiguracionLEY_PROTECCION_DATOS.Value;
   end;
end;

Como veis la única condición es que no este en modo edición nuestro datasource (DsPrincipal)

En el momento de grabar deberemos controlar estos mismos campos por lo que antes de hacer el post haremos los siguiente

Código Delphi [-]
if DsPrincipal.DataSet.State in [dsEdit] then
    begin
      if ColorBox1.Selected<>StringToColor(DM.IBDConfiguracionCOLOR_DISPONIBLE.Value) then DM.IBDConfiguracionCOLOR_DISPONIBLE.Value:=ColorToString(ColorBox1.Selected);
      if ColorBox2.Selected<>StringToColor(DM.IBDConfiguracionCOLOR_NO_DISPONIBLE.Value) then DM.IBDConfiguracionCOLOR_NO_DISPONIBLE.Value:=ColorToString(ColorBox2.Selected);
      if ColorBox3.Selected<>StringToColor(DM.IBDConfiguracionCOLOR_BLOQUEADA.Value) then DM.IBDConfiguracionCOLOR_BLOQUEADA.Value:=ColorToString(ColorBox3.Selected);
      if Memo1.Lines.Text<>DM.IBDConfiguracionLEY_PROTECCION_DATOS.Value then DM.IBDConfiguracionLEY_PROTECCION_DATOS.Value:=Memo1.Lines.Text;
      DSPrincipal.DataSet.Post;
    end;

Siguiendo el resto del proceso como ya hemos visto

También cambia nuestros procedures en los botones SBMAS y SBMENOS por los siguientes, ya que sirven para varios campos

Código Delphi [-]
procedure TFCONFIGURACION.SBMasClick(Sender: TObject);
//------------------------------------------------------------------------------
//****************************************************************[ SBMas ]*****
// Aumenta en 1  el nivel del campo seleccionado entre Día, segundos y Registros

//------------------------------------------------------------------------------
begin
  case RadioGroup1.ItemIndex of
     0:begin
         if DBEDia.Field.IsNull then DBEDia.field.Value:=1;
         if DBEDia.Field.value<7 then DBEDia.field.Value:=DBEDia.field.Value+1;
       end;
     1BESegundos.field.Value:=DBESegundos.field.Value+1;
     2BERegistros.field.Value:=DBERegistros.field.Value+1;
  end;
end;

procedure TFCONFIGURACION.SBMenosClick(Sender: TObject);
//------------------------------------------------------------------------------
//**************************************************************[ SBMenos ]*****
// Disminuye 1  el nivel del campo seleccionado entre Día, segundos y Registros
//------------------------------------------------------------------------------
begin
  case RadioGroup1.ItemIndex of
     0:begin
         if DBEDia.Field.IsNull then DBEDia.field.Value:=1;
         if DBEDia.Field.value>1 then DBEDia.field.Value:=DBEDia.field.Value-1;
       end;
     1:if DBESegundos.Field.value>1 then DBESegundos.field.Value:=DBESegundos.field.Value-1;
     2:if DBERegistros.Field.value>1 then DBERegistros.field.Value:=DBERegistros.field.Value-1;
  end;
end;

Esto implica que hacemos una nueva llamada al editor por lo que el siguiente procedure en este módulo cambia de la siguiente manera

Código Delphi [-]
procedure TFeditor.SBOkClick(Sender: TObject);
//------------------------------------------------------------------------------
//*****************************************************************[ SBOk ]*****
// Graba los datos en la variable y salimos
//------------------------------------------------------------------------------
begin
   VarSMEMO:=Memo1.Lines.Text;
   if VarSUnidad='UUSUARIOS' then FUsuarios.MEmoNotas.Lines:=Memo1.Lines;
   if VarSUnidad='UCONFI' then FCONFIGURACION.Memo1.Lines:=Memo1.Lines;
   Close;
end;

y por último está sería la manera de llamarlo

Código Delphi [-]
procedure TFMENU.act_ConfigurarExecute(Sender: TObject);
//------------------------------------------------------------------------------
//********************************************************[ Configuración ]*****
// Llamamos al módulo de configuración
// Nivel mínimo para acceder [   6  ]
//------------------------------------------------------------------------------
begin
   if VarINivelUSuario>=6 then  FCONFIGURACION.Show
                          else ShowMessage('No tiene nivel suficiente para acceder al apartado');
end;

Ya mañana seguiré ya que hoy tengo otras cosas que terminar.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
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
Obtener fotograma de video. Video Finish rabata2001 Varios 0 07-05-2014 12:02:30
segundo video tutorial delphi cacu La Taberna 4 21-02-2012 14:30:26
Video Tutorial Delphi Para Novatos cacu Varios 4 22-11-2011 07:41:30
crear video tutorial glrjola Varios 7 28-04-2011 12:08:56
Video Tutorial para instalar Apache + MySQL + PHP desde 0 !!! Hagen PHP 0 07-02-2007 12:57:45


La franja horaria es GMT +2. Ahora son las 10:46:57.


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