Výsledky 1 až 15 z 15

Téma: [Delphi] Tlačítka ve stylu XP

  1. #1

    Standardní [Delphi] Tlačítka ve stylu XP

    Jak mám v Delphi 7 nastavit, aby obyčejné buttony vypadaly ve Win XP "XP style"? A ne jako obyčejné hranaté tlačítka? Jde to nějak nebo je na to potřeba zvláštní komponenta?

  2. #2

    Standardní

    V Delphi7 je na to komponenta, už nevim jaxe přesně menuje, ale je někde na konci Standard/Advanced nebo Windows.
    EC5410 + Chill 400w, AMD Athlon XP 2500+@3200+, AC Copper Silent 2 (rev2), Out: AC Fan Pro TC, DFI NFII Ultra-AL nForce2 Ultra 400, 2x256MB+512MB DDR 333 CL2.5 Dual Channel, inno3D GeForce4 Ti4200-8x 128MB + AC Fan Pro TC, Seagate ST3160023A 160GB, Seagate ST360021A 60GB, Teac CD-W552E, LG SuperMulti GSA-4160B, SB Live! 5.1 Player + Audigy MOD, Windows XP Pro SP2, Karneval TURBO 2000/300

  3. #3

    Standardní

    Ta komponenta se jmenuje XPmanifest. Stačí jí vložit do formuláře a je to. Funguje to ale jenom pod XP.

  4. #4
    Senior Member Avatar uživatele Anduril
    Založen
    12.10.2002
    Bydliště
    OVA, OL
    Věk
    42
    Příspěvky
    3 474
    Vliv
    322

    Standardní

    Obecně stačí vytvoři soubor program.exe.manifest a ten umístit do stejného adresáře jako program.exe... Tohle pak funguje jak pro Delphi, tak pro prorgramy v C/C++, C# a podobně.. Obsah stačí obšlehnout z nějakého jiného manifestu (nějaké jsou myslím v adr. Windows/System32)...
    ntb: HP EliteBook 8460p i7-2640M | 8GB RAM | 120GB SSD + 500GB HDD | ATi HD6470 | 14" HD+ | W7 PRO
    home: HP Docking Station | HP L2045W | WD 500GB Scorpio Blue USB box
    work: HP Docking Station | HP L2445W
    audio: Epiphone G-400 SG + Sounder Telecaster | E-MU 0202 | Cambridge Audio Azur 340R | Wharfedale Diamond 9.2 | Magnat Betasub 20A | Sennheiser HD555

  5. #5

    Standardní

    Konecne uz viem na co je subor *.manifest
    DIYS gripmeen >> CPU Wolfdale E8200 MOBO Gigabyte GA-P35-DS3R rev 2.1 RAM A-DATA DDRII 800+ EE VGA Gigabyte 3850 512MB HDD SAMSUNG 500GB HD501LJ
    Fujistu Siemens Scenic >> CPU Pentium III 1000MHz MOBO unknown RAM 256 + 128MB VGA int. i810 HDD 20GB neznameho typu

  6. #6
    Junior Member
    Založen
    24.10.2002
    Bydliště
    Liberetz
    Příspěvky
    68
    Vliv
    276

    Standardní

    nevo staci pridat do uses Xpman, nebo tak nejak ...

  7. #7

    Standardní

    Citace Původně odeslal Anduril
    Obecně stačí vytvoři soubor program.exe.manifest a ten umístit do stejného adresáře jako program.exe... Tohle pak funguje jak pro Delphi, tak pro prorgramy v C/C++, C# a podobně.. Obsah stačí obšlehnout z nějakého jiného manifestu (nějaké jsou myslím v adr. Windows/System32)...
    Zkoušel jsem to v tom C#, ten manifest soubor jsem pojmenoval stejně jako project ale nějak to nefunguje

  8. #8
    Senior Member Avatar uživatele Anduril
    Založen
    12.10.2002
    Bydliště
    OVA, OL
    Věk
    42
    Příspěvky
    3 474
    Vliv
    322

    Standardní

    Musí se to jmenovat stejně jako exe soubor...tzn napriklad mujprogram.exe.manifest a obsah manifestu vypadá asi takto:
    Kód:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly
      xmlns="urn&#58;schemas-microsoft-com&#58;asm.v1"
      manifestVersion="1.0">
    <assemblyIdentity
        name="MujProgram"
        processorArchitecture="x86"
        version="1.0.0.0"
        type="win32"/>
    <description>program</description>
    <dependency>
        <dependentAssembly>
            <assemblyIdentity
                type="win32"
                name="Microsoft.Windows.Common-Controls"
                version="6.0.0.0"
                processorArchitecture="x86"
                publicKeyToken="6595b64144ccf1df"
                language="*"
            />
        </dependentAssembly>
    </dependency>
    </assembly>
    V C# (resp. Windows Forms) je důležité nastavit vlastnost FlatStyle ovl. prvků na "System" ...
    ntb: HP EliteBook 8460p i7-2640M | 8GB RAM | 120GB SSD + 500GB HDD | ATi HD6470 | 14" HD+ | W7 PRO
    home: HP Docking Station | HP L2045W | WD 500GB Scorpio Blue USB box
    work: HP Docking Station | HP L2445W
    audio: Epiphone G-400 SG + Sounder Telecaster | E-MU 0202 | Cambridge Audio Azur 340R | Wharfedale Diamond 9.2 | Magnat Betasub 20A | Sennheiser HD555

  9. #9

    Standardní

    Paráda, tak takhle to funguje. A jde nějak nastavit aby ve Visual Studiu byla jako výchozí hodnota FlatStyle "System"? A nejde ten manifest soubor nějak "zakompilovat" do toho .exe? Znám totiž spoustu aplikací kde tento manifest není a přesto jsou ve stylu XP
    EDIT: v helpu jsem se dočetl že to jde přidat jako resource do aplikace. Ale nepíšou tam jak

  10. #10
    Senior Member Avatar uživatele Anduril
    Založen
    12.10.2002
    Bydliště
    OVA, OL
    Věk
    42
    Příspěvky
    3 474
    Vliv
    322

    Standardní

    Stačí přidat do resource souboru něco ve stylu
    (C style resource; u C# jsem resource zatím nijak nezkoumal)
    1 24 "Mujprogram.exe.Manifest"

    Nebo docela dobře se to dělá v Resource Hackeru...otevřeš si exáč a dáš add new resource z menu Action. Vybereš manifest a jako resource type dáš 24 a jako name dáš 1, language necháš prázdn. Add resource a uložit
    ntb: HP EliteBook 8460p i7-2640M | 8GB RAM | 120GB SSD + 500GB HDD | ATi HD6470 | 14" HD+ | W7 PRO
    home: HP Docking Station | HP L2045W | WD 500GB Scorpio Blue USB box
    work: HP Docking Station | HP L2445W
    audio: Epiphone G-400 SG + Sounder Telecaster | E-MU 0202 | Cambridge Audio Azur 340R | Wharfedale Diamond 9.2 | Magnat Betasub 20A | Sennheiser HD555

  11. #11

    Standardní

    Tak ta vychytávka s Resource Hackerem mi nějak nefunguje a problém s resource v C# je v tom, že nevím jak ho mám do toho projektu přidat. V Céčku je to jasné, ale tady jsem nic takového nenašel

  12. #12
    Senior Member Avatar uživatele Anduril
    Založen
    12.10.2002
    Bydliště
    OVA, OL
    Věk
    42
    Příspěvky
    3 474
    Vliv
    322

    Standardní

    Citace Původně odeslal Dani Filth
    Tak ta vychytávka s Resource Hackerem mi nějak nefunguje a problém s resource v C# je v tom, že nevím jak ho mám do toho projektu přidat. V Céčku je to jasné, ale tady jsem nic takového nenašel
    Kua, spletl jsem se...typ má být 24 samozřejmě...jinak jsem to testoval a funguje mi to...

    A tady jsem ještě spíchnul krátký kód na zapnutí System FlatStyle pro všechny kontroly, co to podporují...moc jsem to netestoval, ale mělo by to fungovat....prostě to hodíš např. do nějakého Initu formuláře a jedem
    Kód:
    foreach&#40;Control c in this.Controls&#41; &#123;
            Type t = c.GetType&#40;&#41;;
            System.Reflection.PropertyInfo pi = t.GetProperty&#40;"FlatStyle"&#41;;
            if&#40;pi!=null&#41; &#123;
                pi.SetValue&#40;c, FlatStyle.System, null&#41;;
                c.Refresh&#40;&#41;;
            &#125;
        &#125;
    ntb: HP EliteBook 8460p i7-2640M | 8GB RAM | 120GB SSD + 500GB HDD | ATi HD6470 | 14" HD+ | W7 PRO
    home: HP Docking Station | HP L2045W | WD 500GB Scorpio Blue USB box
    work: HP Docking Station | HP L2445W
    audio: Epiphone G-400 SG + Sounder Telecaster | E-MU 0202 | Cambridge Audio Azur 340R | Wharfedale Diamond 9.2 | Magnat Betasub 20A | Sennheiser HD555

  13. #13

    Standardní

    No paráda funguje to! i ten Resource Hacker i ten kód, díky moc! A nevěděl bys ještě jak přidat ten resource soubor do C# projektu? Je to přece jen pohodlnější

  14. #14
    Senior Member Avatar uživatele Anduril
    Založen
    12.10.2002
    Bydliště
    OVA, OL
    Věk
    42
    Příspěvky
    3 474
    Vliv
    322

    Standardní

    Citace Původně odeslal Dani Filth
    A nevěděl bys ještě jak přidat ten resource soubor do C# projektu? Je to přece jen pohodlnější
    Hmmm, to fakt netuším. Já používám SharpDevelop a ten resource editor co tam je, tak ten toho moc neumí. Já dávám ten manifest spolu s exe souborem, neřeším to
    ntb: HP EliteBook 8460p i7-2640M | 8GB RAM | 120GB SSD + 500GB HDD | ATi HD6470 | 14" HD+ | W7 PRO
    home: HP Docking Station | HP L2045W | WD 500GB Scorpio Blue USB box
    work: HP Docking Station | HP L2445W
    audio: Epiphone G-400 SG + Sounder Telecaster | E-MU 0202 | Cambridge Audio Azur 340R | Wharfedale Diamond 9.2 | Magnat Betasub 20A | Sennheiser HD555

  15. #15

    Standardní

    OK díky moc

Informace o tématu

Users Browsing this Thread

Toto téma si právě prohlíží 1 uživatelů. (0 registrovaných a 1 anonymních)

Pravidla přispívání

  • Nemůžete zakládat nová témata
  • Nemůžete zasílat odpovědi
  • Nemůžete přikládat přílohy
  • Nemůžete upravovat své příspěvky
  •