Entwickler-Ecke

Windows API - "Rundere" Buttons


MrDelphi - Fr 08.11.02 21:19
Titel: "Rundere" Buttons
Also, in neureren Programmen werden ja oft ie Kanten bei Buttons "abgerundet". Z.B. bei der Installation von Office XP, bei Encarta usw...
Auch im neuen eMule, falls jemand weiß was das ist ;)

Jedenfalls interessiert mich, wie man sowas machen kann?


O'rallY - Fr 08.11.02 21:52

Du meinst den XP-Style, oder?


MrDelphi - Fr 08.11.02 22:03

jaein, auch im neuen icq beispielsweise werden solche rundbuttons verwendet ;)
aber ja, eigentlich meine ich den...


littlemike1005 - Fr 08.11.02 22:33
Titel: XP - Kompo.
Geh auf http://www.anobie.de/computer/delphi/projecte/xp-style/xp-style.zip installier die kompo. zieh das icon einfach auf das form und schon hast du alles im xp style (aber nur beim ausführen die entwicklung ist im alten stil)


MrDelphi - Fr 08.11.02 23:32

werde ich gleich mal ausprobieren. könnt ihr mir auch erklären was diese kombo eigentlich macht (um das aussehen zu verändern muss ja sicher einiges getan werden :))?


Delete - Sa 09.11.02 20:32

Dazu gibt´s schon zig Postings. :?

Das Geheimnis ist, dass diese Fähigkeit in Windows XP enthalten ist und lediglich durch eine kleine XML-Datei aktiviert werden muss. Diese XML-Datei steckt auch in der Komponente, die eigentlich vollkommen überflüssig ist.
Es reicht, die XML-Datei mit dem vorgegebenen Inhalt in das Programmverzeichnis zu kopieren und ihr den Namen der EXE zu geben, wobei man noch ".manifest" ranhängt:

Quelltext
1:
Project1.exe.manifest                    

Wenn du die Komponente benutzen möchtest, solltest du dein Programm möglichst nicht mit UPX verkleinern, sonst kommt es zu Fehlermeldung. Die Alternative wäre, das Programm aber nicht die Ressourcen zu komprimieren. Oder, wie schon erwähnt, die Datei separat beizulegen.


MrDelphi - So 10.11.02 15:13

wie heißt denn diese bestimmte xml datei?


OregonGhost - Mo 11.11.02 12:46

Wer lesen und schreiben kann, ist klar im Vorteil :roll:
MathiasSimmack hat folgendes geschrieben:

Es reicht, die XML-Datei mit dem vorgegebenen Inhalt in das Programmverzeichnis zu kopieren und ihr den Namen der EXE zu geben, wobei man noch ".manifest" ranhängt:

Quelltext
1:
Project1.exe.manifest                    



Der Inhalt der Datei sollte wie folgt aussehen:

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
<?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="CompanyName.ProductName.YourApplication"
    type="win32"
/>
<description>Your application description here.</description>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="X86"
            publicKeyToken="6595b64144ccf1df"
            language="*"
        />
    </dependentAssembly>
</dependency>
</assembly>