Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-05-2016
xangiesaurx xangiesaurx is offline
Miembro
NULL
 
Registrado: feb 2016
Posts: 57
Poder: 9
xangiesaurx Va por buen camino
Hahahaha, muchas gracias rocksoft, intentaré con el parámetro, a ver que tal me va, igualmente cualquier cosa que pase, vendré a molestarlos de nuevo :P
Gracias una vez más por el apoyo
Responder Con Cita
  #2  
Antiguo 19-05-2016
xangiesaurx xangiesaurx is offline
Miembro
NULL
 
Registrado: feb 2016
Posts: 57
Poder: 9
xangiesaurx Va por buen camino
Ok, creo que estoy haciendo algo mal o de plano ya me complique de más y llegue a un bloqueo mental

Básicamente tengo en mi aplicación A la siguiente línea de código en la parte donde ejecuto la aplicacion B

Código Delphi [-]
 SendMsgToReceiver('TMainMenu','Capturas');

Y en la aplicacón B (que es quien recibe el mensaje)

Código Delphi [-]
procedure TMainMenu.WMGetData(var Msg: TWMCopyData);
var
  Message: string;
begin
  Message:= Pchar(Msg.CopyDataStruct.lpData);
  if Message = 'Capturas' then
  AddStylesMenu;

Donde AddStylesMenu es donde aplico los Temas. Ahora, el problema es que para generar la ventana utilizo:

Código Delphi [-]
procedure TMainMenu.FormCreate(Sender: TObject);

Por lo que todo lo que hago dentro de WMGetData no se aplica por que no esta dentro del FormCreate, como puedo solucionar esto?
Responder Con Cita
  #3  
Antiguo 20-05-2016
xangiesaurx xangiesaurx is offline
Miembro
NULL
 
Registrado: feb 2016
Posts: 57
Poder: 9
xangiesaurx Va por buen camino
Ok, parece que haciendo eso se me esta complicando mucho, así que que me comentaron que existe una forma de hacer eso a través de los registros, que el tema o skin se queda almacenado en el registro y simplemente tendría que leerlo para aplicárselo a mi aplicación, la cuestión es que nunca eh manejado registros desde mis aplicaciones, alguien podría darme una introducción acerca de esto?
Gracias
Responder Con Cita
  #4  
Antiguo 30-05-2016
xangiesaurx xangiesaurx is offline
Miembro
NULL
 
Registrado: feb 2016
Posts: 57
Poder: 9
xangiesaurx Va por buen camino
Hola, vengo a dejarles la solución que aplique para este problema, por si a alguien más en un futuro le sirve.

Básicamente, lo que hace este código es buscar en donde se encuentran los temas/skins el registro del último skin aplicado a la aplicación, lo jala y lo aplica.

Código Delphi [-]
  StyleServices.OnThemeChange:=OnThemeChange;

  SearchDir := 'Direccion del folder' + PathDelim;
  if DirectoryExists(SearchDir) then begin
    if FindFirst(SearchDir+'*.*',
                faAnyFile - faDirectory,
                searchResults) = 0 then
   repeat
     try
       if TStyleManager.IsValidStyle(
            SearchDir+searchResults.Name) then
          TStyleManager.LoadFromFile(
             SearchDir+searchResults.Name);
     except
       OutputDebugString('Not valid style file');
     end;
   until FindNext(searchResults) <> 0;
  end else
    OutputDebugString('Theme`s folder does not exist');
 // Sort the styles using a StringList
 SLStyles := TStringList.Create;
 try
   SLStyles.Duplicates := TDuplicates.dupIgnore;
   for Style in TStyleManager.StyleNames do
     SLStyles.Add(Style);
   SLStyles.Sort;

   R:=TRegistry.Create;
   try
     if R.OpenKey(PrgKey,false) then
     begin
       try
         S:=R.ReadString('ThemeStyle');
         TStyleManager.TrySetStyle(S,false);
       except
       end;
     end;
   finally
      FreeAndNil(R);
   end;

 finally
   SLStyles.Free;
 end;
Responder Con Cita
  #5  
Antiguo 30-05-2016
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Cita:
Empezado por xangiesaurx Ver Mensaje
Hola, vengo a dejarles la solución que aplique para este problema, por si a alguien más en un futuro le sirve.
Estupendo.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #6  
Antiguo 30-05-2016
rocksoft rocksoft is offline
Miembro
NULL
 
Registrado: may 2016
Posts: 71
Poder: 9
rocksoft Va por buen camino
Buenas xangiesaurx,

hipoteticamente que pasaria si tienes dos aplicaciones que usan skins? siempre que cambien en una aplicacion te cambia el skin en las dos no?
Responder Con Cita
  #7  
Antiguo 30-05-2016
xangiesaurx xangiesaurx is offline
Miembro
NULL
 
Registrado: feb 2016
Posts: 57
Poder: 9
xangiesaurx Va por buen camino
Cita:
Empezado por rocksoft Ver Mensaje
Buenas xangiesaurx,

hipoteticamente que pasaria si tienes dos aplicaciones que usan skins? siempre que cambien en una aplicacion te cambia el skin en las dos no?
Así es, ya que el código busca cual fue la última skin que se uso y lo aplica a la aplicación que se va abriendo.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Cambiando un string Soa Pelaez Varios 2 27-03-2016 03:14:20
cambiando de DBX a MDO Gabriel Conexión con bases de datos 4 09-08-2008 11:49:17
Cambiando a C# y .NET waltergomez La Taberna 10 01-08-2006 02:57:18
Cambiando Servidor a través de un Tcrpe... dunia_lv Impresión 0 28-04-2005 18:17:16


La franja horaria es GMT +2. Ahora son las 09:12:34.


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