Sie kennen das sicherlich: Sie haben ein Programm unter Windows XP laufen, doch werden die Standard-Controls weiterhin grau und eintönig dargestellt, wie bei den vorherigen Windows Versionen. Aber diesem kann man entgegenwirken - und zwar mit XML und ein wenig Windows API.
Fangen wir an: <?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="Firma.Projekt1.Projekt1" type="win32" /> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly> Da einige - von Programm zu Programm unterschiedliche - Änderungen vorgenommen werden müssen, schauen wir uns die wichtigsten Zeilen doch mal an: version="1.0.0.0" In dieser Zeile muss die exakte Programmversion stehen, falls diese fehlerhaft ist, kommt <>keine Veränderung der Controls zustande. name="IhreFirma.Projekt1.Produktname" Ersetzen Sie IhreFirma durch dem Namen Ihrer Firma, Projekt1 durch den internen Namen des Programmes und Produktname durch den Produktnamen Ihrer Applikation. Alle weiteren Sachen interessieren uns nicht und können unverändert übernommen werden (bitte beachten Sie, dass bei Aktualisierung des Programms die Manifestdatei ggf. geändert werden muss!) Nun öffnen Sie Ihr Projekt und fügen die Common Dialog Komponente in der Version 6.0 ein. Danach wechseln Sie ins Code-Fenster der Form und übernehmen folgende Deklaration: ' API-Deklaration, um die Initialisation der ' CommonControls zu ermöglichen Private Declare Sub InitCommonControls Lib "comctl32.dll" () Falls Sie möchten, können Sie nun noch abfragen, ob das verwendete Betriebssystem Windows XP ist und die Entscheidung, ob die Controls im XP-Design angezeigt werden, dem Anwedender überlassen. ' Prüfen, ob WinXP If ... Then Call InitCommonControls End If Platzieren Sie nun noch ein Objekt aus den Windows Common Controls auf die Form, kompilieren das Projekt und starten anschließend die so erstellte EXE-Datei. Und siehe da: die Controls/Objekte werden im WinXP-Design dargestellt
Aber was ist das? Die Progressbar ist gar nicht im XP Design! Hier muss noch ein wenig nachgeholfen werden. Fügen Sie die dem Projekt noch die Microsoft Common Controls 5.0 hinzu, und verwenden Sie die Progressbar daraus. Auf diese Weise kann dann nun auch die Progressbar im WindowsXP-Design bewundert werden.
Genau wie die Controls auf der Form werden nun auch MessageBoxen mit einem XP Button dargestellt. Dieser Tipp wurde bereits 37.774 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevAniGif (VB/VBA) Anzeigen von animierten GIF-Dateien Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. Tipp des Monats März 2024 Dieter Otter UTF-8 Konvertierung von Dateien und Strings VB6 selbst verfügt über keine Funktionen zur UTF-8 Konvertierung von Daten. Mit Hilfe des ADODB.Stream-Objekts lassen sich diese fehlenden Funktionen aber schnell nachrüsten. TOP Entwickler-Paket TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |