Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Uso de la unidad Themes... (https://www.clubdelphi.com/foros/showthread.php?t=49645)

fide 25-10-2007 22:48:53

Uso de la unidad Themes...
 
Por favor. Alguien sabe o tiene documentacion de como uso la unidad Themes.pas de delphi??

Al parecer esta manipula los estilos visuales de Windows. No estoy muy seguro de que se hace con ella pero puede ser de ayuda para algo importante.. Si alguien ha trabajado con ella, que por favor lo diga...

aeff 25-10-2007 23:28:51

fide colega, que delphi es ese? en el 5 no la veo por ninguna parte y en C++ builder 6 la que encontré me da una cantidad de errores, asi no se puede estudiar,

puedes comentar más acerca de esta unit??

saludos!

fide 26-10-2007 01:02:22

Themes.pas
 
Bueno, esta unit tiene unas cuantas definiciones de componentes de Windows y todas esas cosas, como los CheckBox y unas cuantas cosas mas.

Por ejemplo, esta es una definicion de un tipo de datos de esta unit.

Código Delphi [-]
type

  TThemedElement = (
    teButton,
    teClock,
    teComboBox,
    teEdit,
    teExplorerBar,
    teHeader,
    teListView,
    teMenu,
    tePage,
    teProgress,
    teRebar,
    teScrollBar,
    teSpin,
    teStartPanel,
    teStatus,
    teTab,
    teTaskBand,
    teTaskBar,
    teToolBar,
    teToolTip,
    teTrackBar,
    teTrayNotify,
    teTreeview,
    teWindow
  );

Ha, eso es en delphi 7.

xEsk 26-10-2007 03:56:19

Como el nombre indica, tiene relación con los temas de Windows. En este ejemplo hago uso de la unidad themes, para "pintar" un checkbox en un TDBGrid usando el tema de windows actual... si no usara esto, se pintaría el checkbox "cutre" antiguo...

Esta unit nos ofrece funciones, variables y tipos para trabajar con los temas de Windows.

Saludos.

dec 26-10-2007 04:00:24

Hola,

Buen apunte xEsk. :)

fide 26-10-2007 05:15:16

Okas
 
Gracias por la ayuda acerca de esta Unit. Espero obtener mas datos. Cuando los tenga los publico enseguida!

fide 27-10-2007 11:01:23

Saber que estilo visual estamos usando!
 
1 Archivos Adjunto(s)
Hola. Este pequeño código sirve para saber si el estilo visual que tenemos aplicado en la PC es al clásico, o si es otro distinto como el de Xp.

Ha, lo unico que lo he implementado sobre delphi 7, y presinde del uses XPMan que no lo traen las versiones anteriores a la 7. En realidad lo que tiene este delphi que no tienen los anteriores es el archivo WindowsXP.res que se encuentra en la carpeta lib. Bueno, solo necesitan copiarlo en cualquier lugar accesible para la App y despues agregarselo al proyecto para que este truco funcione..

Mas abajo se puede bajar el archivo a utilizar. Peguenlo en la carpeta lib...


Aqui como se debe de incluir en el delphi, lo cual provoca que la app se adapte al estilo visual en curso!

Código Delphi [-]
  {$R WindowsXP.res}

despues se puede ejecutar esto a gusto...

Código Delphi [-]
...
 //Si no es delphi 7, no incluir XPMan, sino  {$R WindowsXP.res}
 uses Themes, XPMan;

procedure TForm1.Button1Click(Sender: TObject);
begin

       if ThemeServices.ThemesEnabled then
          ShowMessage('Se esta utilizando Windows XP u otro que no es el clasico!')
       else
          ShowMessage('Se esta utilizando el estilo de Windows Clasico!');

end;

aeff 27-10-2007 15:24:28

hmmm, interesante eso fide ¿no?, en Delphi 5 tambien funciona ese archivo de recurso, ¿por que será un archivo de recurso el que logra este propósito en nuestras aplicaciones?

ahh!, lo abrí con el ResourceHacker y miren lo que vi:

Cita:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"><assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="company" type="win32" /><description>not necessary</description><dependency><dependentAssembly><assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /></dependentAssembly></dependency></assembly>
saludos!

fide 28-10-2007 03:02:43

Duda!
 
Es una ocx o algo de eso ese archivo de recursos he??????
:confused::confused::confused:


La franja horaria es GMT +2. Ahora son las 04:06:39.

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