Avatar billede capn Nybegynder
14. marts 2006 - 18:07 Der er 1 kommentar og
1 løsning

"XP Look" i VB.NET 2002

Hvordan laver man et "Xp look" til sine programmer udviklet i VS 2002? Giv gerne et eksempel!
Avatar billede bernhof Nybegynder
14. marts 2006 - 21:56 #1
Følgende virker i VS.NET 2003 (har ikke prøvet i 2002, men i 2003 var der heller ikke nogen nem måde at få XP look på):

Først skal du sætte egenskaben FlatStyle til System på alle dine controls, hvor det er muligt (dvs. knapper, labels, checkboxes, radiobuttons mv.)

Herefter skal du oprette en ny tekst-fil i samme mappe, som din .exe fil. Placer følgende XML i filen:


<?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="Microsoft.Winweb.<Executable Name>"
  type="win32"
/>
<description>.NET control deployment tool</description>
<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.Windows.Common-Controls"
      version="6.0.0.0"
      processorArchitecture="X86"
      publicKeyToken="6595b64144ccf1df"
      language="*"
    />
  </dependentAssembly>
</dependency>
</assembly>


Gem filen, og omdøb den til <Executable Name>.exe.manifest.


HUSK at udskifte <Executable Name> i både filens indhold og filens navn, til navnet på din .exe fil - UDEN ".exe" ... Dvs. hvis din exe-fil hedder "MinApplikation.exe", skal du udskifte "<Executable Name>" med "MinApplikation" i ovenstående. Derved ville der fx komme til at stå

  name="Microsoft.Winweb.MinApplikation"

i linie 6 af .manifest filen, og .manifest filens navn ville være:

  MinApplikation.exe.manifest


Når du kører programmet herefter, og .manifest filen ligger i samme mappe som .exe-filen, skulle den gerne have fået XP look.


For at undgå at skulle have den .manifest fil liggende ved siden af .exe filen, kan du importere den direkte i din .exe fil. Gør dog først dette, når du har kompileret den endelige udgave af din applikation, da den importerede .manifest fil vil blive fjernet, hver gang du rekompilerer.

For at importere .manifest filen, skal du

1) Åbne .exe filen direkte i Visual Studio .NET. Du vil her se en mindre mappe struktur. Højre-klik et sted i de hvide område og vælg "Add Resource...".

2) I den nye dialog, der åbner, klik "Import..."

3) Udpeg .manifest filen du lavede og tryk "Open"

4) Der åbner nu endnu en dialog. Indtast "RT_MANIFEST" i det lille tekst-felt og tryk OK.

5) Du vil nu få vist indholdet af .manifest filen. Luk denne visning, så du igen ser den førnævnte mappestruktur. Der er kommet en ny mappe der hedder "RT_MANIFEST" og under denne et punkt der vist nok hedder "101"

6) Markér "101" og indtast tallet 1 i egenskaben "ID" for det markerede element. (Hvis properties vinduet ikke er åbent, højre-klik på "101" og vælg "Properties")

7) Gem din .exe fil, og se om du får XP look, selv, når .manifest filen IKKE ligger i samme mappe.


Håber du kan få det til at virke :-)
Avatar billede capn Nybegynder
15. marts 2006 - 19:01 #2
Det var godt nok meget der skulle til. Mange tak. Jeg prøver det i morgen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester