Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Pagecontrol mit Tabposition Left erzeugt leere Tabs (https://www.delphipraxis.net/172649-pagecontrol-mit-tabposition-left-erzeugt-leere-tabs.html)

Markus70 15. Jan 2013 15:44

Pagecontrol mit Tabposition Left erzeugt leere Tabs
 
Hallo,

ich habe eine Applikation von Delphi 2009 auf Delphi XE3 umgestellt.
Darin gibt es ein Form mit einer Pagecontrol, TabPosition left.
Warum werden mir unter Win XP die beiden Tabs als leere Felder angezeigt, unter Win 7 jedoch korrekt?

Gruß
Markus

Helmi 15. Jan 2013 20:38

AW: Pagecontrol mit Tabposition Left erzeugt leere Tabs
 
Hallo,

kann es vielleicht damit zu tun haben?

Zitat:

Zitat von Hilfe
Wenn die Eigenschaft TabPosition auf tpLeft oder tpRight gesetzt ist, muss wegen einer Einschränkung in dem Windows-Standardsteuerelement die Schriftart eine TrueType-Schrift sein. Andernfalls könnte der Text in dem Register inkorrekt dargestellt werden.


Markus70 16. Jan 2013 09:00

AW: Pagecontrol mit Tabposition Left erzeugt leere Tabs
 
Liste der Anhänge anzeigen (Anzahl: 1)
nein, damit hat es leider nichts zu tun.

Ich habe mal ein Beispiel bereitgestellt. Vielleicht hilft das weiter...

Markus70 17. Jan 2013 10:35

AW: Pagecontrol mit Tabposition Left erzeugt leere Tabs
 
...hat denn keiner eine Idee?

Bummi 17. Jan 2013 11:49

AW: Pagecontrol mit Tabposition Left erzeugt leere Tabs
 
Wenn Du die Laufzeitthemes abschaltest funktioniert es ...

etwas erträglicher wird es wenn Du ein XP-Manifest verwendest... z.B.
Code:
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <assemblyIdentity
     type="win32"
    name="DelphiApplication"
    version="1.0.0.0"
     processorArchitecture="*"/>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity
        type="win32"
        name="Microsoft.Windows.Common-Controls"
        version="6.0.0.0"
        publicKeyToken="6595b64144ccf1df"
        language="*"
        processorArchitecture="*"/>
    </dependentAssembly>
  </dependency>
</assembly>

Markus70 17. Jan 2013 13:18

AW: Pagecontrol mit Tabposition Left erzeugt leere Tabs
 
Wenn ich die Laufzeitthemes umstelle dann verwendet er auf Win 7 aber auch den alten Style. Und das soller ja gerade nicht.

Wenn ich mich jetzt an so ein Manifest wage, unterscheidet das dann, ob es eine Win 7 Maschine oder XP/Vista ist?

Muß ich beim Erstellen von so einem Manifest irgendwas beachten? - Da hab ich ja noch nie was mit zu gehabt:roll:

Bummi 17. Jan 2013 13:46

AW: Pagecontrol mit Tabposition Left erzeugt leere Tabs
 
Eine Option wäre neben <DeinProgramm.Exe> ab Vista aufwärts eine Datei <DeinProgramm.Exe.manifest> zu legen und ohne Laufzeitthemes zu kompilieren. Der Inhalt der Datei entspräche meinem letzen Post.

Markus70 18. Jan 2013 09:53

AW: Pagecontrol mit Tabposition Left erzeugt leere Tabs
 
hmm, seltsam.
wenn ich das Projekt ohne Laufzeitthemes kompiliere, habe ich unter Win 7 und unter Win XP den alten Style.
Wenn ich nun das Manifest in den Ordner lege, dann bleibt auf Win 7 der alte Style und auf Win XP hab ich den neuen, der dann wieder leere Tabs zeigt...

Warum kann ich nicht einfach nur dieses eine Pagecontrol im alten Style anzeigen lassen, wenn das Betriebssystem XP oder kleiner ist? :?::?:

Bummi 18. Jan 2013 10:13

AW: Pagecontrol mit Tabposition Left erzeugt leere Tabs
 
Doch das geht, Du müsstest Dir nur noch hier im Forum eine der Routinen zur Erkennung des Betriebssytems suchen...

Delphi-Quellcode:

uses uxTheme;

procedure TForm1.Button1Click(Sender: TObject);
begin
  SetWindowTheme(PageControl1.Handle,'','');
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:20 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz