elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Tutorial: estilo XP en VB6 y VB.net
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Tutorial: estilo XP en VB6 y VB.net  (Leído 5,713 veces)
karmany
Colaborador
***
Desconectado Desconectado

Mensajes: 1.615


Sueñas que sueñas


Ver Perfil WWW
Tutorial: estilo XP en VB6 y VB.net
« en: 5 Agosto 2006, 14:15 pm »

INTRODUCCIÓN
[/size]

Como no lo he visto por ningún lado en el foro, voy a hacer un pequeño tute paso a paso de cómo dar la apariencia visual de Windows XP desde Visual Basic 6.

Lo primero y lógicamente hay que tener instalado Windows XP.

Imaginemos que ya tenemos nuestro Proyecto terminado y estamos a punto de compilar. Si ejecutamos el programa desde VB6 veremos cómo los botones, scrollbar, controles… tienen una apariencia muy clásica y muy distinta de la apariencia de Windows XP:


Para conseguir la apariencia de Windows XP tenemos que seguir estos pasos:

1- Lo primero que hay que hacer es añadir al proyecto la función InitCommonControls() del API de Windows.
Esta función carga previamente en memoria la librería de controles comunes de Windows, Microsoft Windows Common Controls (comctl32.dll).
Yo he probado sin utilizar esta función y el programa me ha funcionado bien, pero hay gente que le da error, así que me quito posibles problemas añadiéndola.
¿Cómo la declaramos?. Poniendo en declaraciones:

Código:
Private Declare Sub InitCommonControls Lib "comctl32" ()

2-Llamar a esta funcion en el inicio del programa desde el evento Initialize del Formulario o desde Sub Main. Si lo pones en el form_load tampoco funcionará. Yo lo hago así:

Código:
Private Sub Form_Initialize()
    InitCommonControls
End Sub


3- Ya podemos compilar nuestro proyecto y generar el ejecutable. Yo lo he llamado: Proyecto1.exe.

4- Ya sólo queda una cosa. Se trata de añadir a nuestra aplicación un recurso con nuestra apariencia XP. Voy a hacerlo muy sencillo y a utilizar un programa gratuito.

Si quieres saber algo más sobre recursos lee mi “tutorial para editar recursos” que es muy interesante:
http://foro.elhacker.net/index.php/topic,134513.0.html

Para hacer esto que he comentado voy a utilizar un programa que es gratuito:
XN Resource Editor. Lo podéis descargar de su página oficial:
http://www.wilsonc.demon.co.uk/d10resourceeditor.htm

Abrimos el XN Resource Editor vamos a File --> Open y seleccionamos nuestro Proyecto1.exe.
Ahora vamos a Resource --> Add resource (Añadir recurso) y seleccionamos
XP Theme Manifest:


Pulsamos OK y nos tiene que haber aparecido una carpeta con nuestro nuevo XP Theme Manifest:



Ya lo hemos hecho todo, ahora sólo tenemos que guardarlo con el nombre que queramos. Lo ejecutamos y…


Ahora ya tenemos el archivo manifest incorporado a nuestra aplicación.

En este punto puede resultar muy curioso y útil poder trabajar en VB6 en modo diseño con estilo XP.
Puedes hacer exactamente todo lo que acabo de explicar: abres el VB6.exe con el XN Resource Editor y sigues los pasos..
Pienso que es la forma más sencilla..
Basado todo en lo mismo, también se puede hacer de esta forma:

Hay que copiar este código XML siguiente en un bloc de notas:

Código:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1"
manifestVersion="1.0">
<assemblyIdentity
    name="Woozle.PEResourceExplorer.XPManifest"
    processorArchitecture="x86"
    version="1.0.0.0"
    type="win32"/>
<description>Windows Shell</description>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
             type="win32"
             name="Microsoft.Windows.Common-Controls"
             version="6.0.0.0"
             processorArchitecture="x86"
             publicKeyToken="6595b64144ccf1df"
             language="*"
        />
    </dependentAssembly>
</dependency>
</assembly>

Y hay que guardarlo con el nombre de la aplicación a la que se va a poner estilo XP + “.manifest”.
En este caso de VB6.exe será: VB6.exe.manifest

Solo queda poner este archivo en el mismo directorio que VB6.exe y arreglado..

CONCLUSIONES:
[/size]
La verdad es que es bastante curioso todo esto. Me resultó extraño que en VB posteriores tampoco estuviera el estilo XP, así que preguntando me dijeron que el VB 2005 tenía ya este estilo. Lo probé y es cierto.

Todo esto explicado es para VB6, pero y para VB.NET ¿¿cómo se hace??
Lo he visto muy bien explicado en esta página así que os doy el enlace. Vale tanto para VB.NET como C#:

http://www.elguille.info/NET/dotnet/temasXP.htm

Espero os resulte útil toda esta información..
Un saludo de karmany.



« Última modificación: 5 Agosto 2006, 14:18 pm por karmany » En línea

andoba

Desconectado Desconectado

Mensajes: 32

void (0xFFFFFF*, unsigned mul*)


Ver Perfil
Re: Tutorial: estilo XP en VB6 y VB.net
« Respuesta #1 en: 5 Agosto 2006, 22:59 pm »

Sticky plz. Buenisimo.


En línea

Mu Online Dev
rob1104


Desconectado Desconectado

Mensajes: 340


Usuario común


Ver Perfil WWW
Re: Tutorial: estilo XP en VB6 y VB.net
« Respuesta #2 en: 6 Agosto 2006, 05:28 am »

wow excelente, nunca se me hubiera ocurrido... salu2
En línea

Sin análisis de requisitos o sin diseño, programar es el arte de crear errores en un documento de texto vacío.
Grimble Grumble

Desconectado Desconectado

Mensajes: 48



Ver Perfil
Re: Tutorial: estilo XP en VB6 y VB.net
« Respuesta #3 en: 6 Agosto 2006, 09:15 am »

Muy buena idea la del tutorial !! Ahora, yo tengo una duda, ya que he usado un ocx q cumple con la misma funcion, pero en el caso q el usuario este usando la apariencia comun ("Windows estilo clasico") ¿Hay forma de desactivarlo? Porq en mi caso queda el ocx funcionando y la apariencia es cualquiera... ya q quedan los botones de XP en el estilo clasico... Espero haberme explicado con claridad...

Saludos !
En línea

A gnome named Grimble Grumble
And little gnomes stay in their homes
Eating, sleeping, drinking their wine...
crashx13x

Desconectado Desconectado

Mensajes: 33


Nopal Hack. "LiVe By ThE cOdE"


Ver Perfil
Re: Tutorial: estilo XP en VB6 y VB.net
« Respuesta #4 en: 9 Agosto 2006, 19:08 pm »

wapo wapo wapo bravo
En línea


Nakp
casi es
Ex-Staff
*
Desconectado Desconectado

Mensajes: 6.336

he vuelto :)


Ver Perfil WWW
Re: Tutorial: estilo XP en VB6 y VB.net
« Respuesta #5 en: 1 Septiembre 2006, 03:06 am »

ps... q lastima.. :-( a mi me aparece cuando ejecuto el programa q la clase no se encuentra... damn it! como lo soluciono compa?

salu2
En línea

Ojo por ojo, y el mundo acabará ciego.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
No puedo enlazar la estilo-gener.css i la index.html i lo pongo como la Tutorial
Desarrollo Web
4r3s 5 4,613 Último mensaje 14 Enero 2011, 19:07 pm
por RyogiShiki
[Tutorial] Programar un patcher/crack con estilo « 1 2 »
Ingeniería Inversa
Mad Antrax 19 18,703 Último mensaje 5 Febrero 2023, 21:44 pm
por mmmmmm
[Tutorial] Bloqueador de pantalla al estilo Anonymous
Java
MarteagaM 3 3,025 Último mensaje 17 Agosto 2013, 15:30 pm
por Debci
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines