DevTrain Startseite Advanced Developers Conference vom 14.-15. Februar 2011  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren


   Autor: Bernhard Elbl Artikel Drucken
        
XP Visual Style für VB6 - Teil 1

Mit XP kommt ein neues Design und damit auch neue Möglichkeiten/Probleme diese in Ihre Anwendung zu integrieren. Wer bereits XP kennt, der weiss, dass neue Applicationen das neue Design nicht von selbst verwenden. Es muss erst eingebunden werden. Zustandig dafür ist die "ComCtl32.dll" die mit Windows XP in zwei Versionen ausgeliefert wird(die alte und die neue 6.0). Per Default wird die alte dll verwendet, weswegen auch die unter XP erzeugten Anwendungen das neue Design nicht einfach mitnehmen. Das Thema heute ist ein Workshop für schnelles Anwenden der "Windows XP Visual Styles" für VB6.

2 Dinge die wir benötigen!
Wir brauchen NUR EINE API - EIN EINZIGER API-CALL - und das Manifest, das, wie sollte es anders sein, im XML-Format vorliegen muss. Die genaue Spezifikation für das Manifest ist auf der Microsoft Seite zu finden. Diese ist so umfangreich und kompliziert.,dass es schwierig ist, durchzublicken:-) Also hier die vereinfachte Version dessen.
 
1. Code für Visual Basic
In der Visual Basic Application muss die API "InitCommonControls" ausgeführt werden und zwar einmal im "Form_Initialize"-Event der Start-Form. Dieser Aufruf gilt dann für die komplette Applikation und alle darin enthaltenen Formualaren!
Option Explicit
Private Declare Function InitCommonControls Lib "comctl32.dll" () As Long
Private Sub Form_Initialize()
    InitCommonControls
End Sub
Wenn Sie die Anwendung jetzt kompilieren sehen Sie nichts:-( Aber die Anwendung ist bereits auf das neue Design vorbereitet! Plazieren Sie noch ein paar Controls rein und kompilieren Sie die Anwendung.
 
2. Das Manifest
Wie schon erwähnt, das Manifest ist XML und das File muss Projekt-Dateiname + .manifest heissen; z.B. "Projekt1.exe.manifest". Ausserdem muss die Datei im selben Verzeichnis, wie die Anwendung enthalten sein! Dies ist genausten zu beachten!!!
Manifest:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    type="win32"
    name="ppedv.xptest.XP"
    processorArchitecture="X86"
    version="1.0.0.0"
/>
<description>Ein XP Test mit Visual Styles</description>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            language="*"
            processorArchitecture="X86"
            version="6.0.0.0"
            publicKeyToken="6595b64144ccf1df"
        />
    </dependentAssembly>
</dependency>
</assembly>
Das Sample finden Sie unten zum Download!
Die genaue Beschreibung für die Struktur eines Manifestes ist hier nachzulesen!
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwxp/html/xptheming.asp


PE-Explorer ein Manifest-Wizard.
Wer sein Manifest nicht selber schreiben will kann sich eine 30 Tage Test-Version von PE-Explorer runterladen. Im Recource-Editor befindet sich ein Manifest-Wizard, der das Manifest direkt in die Anwendung implementiert. Dies funktioniert allerdings NUR, wenn "InitCommonControls" im Code bereits verwendet wird! hier der Link...
http://www.heaventools.com/PE_Explorer_resource_XP_Wizard.htm


TIP!!!
Verwenden Sie innerhalb von Frames eine Picturebox um die Designfehler mit Check/Options zu unterbinden!!!

DevTrain Camp - Schneller zum .NET 3.5 Developer
 
Verwandte Artikel      Verlinkte Dokumente
    Keine verknüpften Dokumente

  Erfasst am: 26.04.2002
  Gültig bis: 26.05.2002
1 Ratings
Bewertung: 100,0%
schlecht    sehr gut  

 
© Copyright 2007 ppedv AG