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/)
-   -   Delphi Vista: Tabsheet.Caption wird nicht angezeigt (https://www.delphipraxis.net/128796-vista-tabsheet-caption-wird-nicht-angezeigt.html)

UlrichK 6. Feb 2009 10:38


Vista: Tabsheet.Caption wird nicht angezeigt
 
Hallo,
folgendes Phänomen macht mich ratlos:
Ich habe in meinem Programm ein PageControl mit 3 Tabsheets.
Das Programm wurde mit D2005 Prof. auf einem XP-Rechner erstellt und kompiliert.

Auf dem einen Vista-Rechner wird alles korrekt angezeigt - auf
einem anderen Vista-Rechner werden die Tabsheet.Caption überhaupt nicht angezeigt.
Bei beiden Rechnern ist Aero aktiviert.

Bisherige Maßnahmen:
Treiber für Grafikkarte und Monitor überprüft: sind aktuelle Versionen
verschiedene Monitor-Auflösungen getestet: Tabsheet-Captions bleiben verschwunden
exe-Datei in verschiedenen Kompatibilitäts-Modi aufgefrufen: Tabsheet-Captions bleiben verschwunden
Aero aktiv oder passiv: Tabsheet-Captions bleiben verschwunden

Kurz gesagt: das Programm läuft auf Vista normalerweise ohne Fehler.

Was könnte der Grund sein, dass die Captions auf bestimmten Vista-Rechnern verschwinden?

Vielen Dank im Voraus

khh 6. Feb 2009 10:47

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
hast du mal überprüft, ob die verwendeten Schriftarten auf allen Rechnern installiert sind ?

Gruss KH

Bernhard Geyer 6. Feb 2009 10:48

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Sind beide Rechner 32-Bit System oder eines davon ein 64-Bit System?

UlrichK 6. Feb 2009 11:00

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Hallo,
beide Rechner sind 32 Bit Versionen.
bei den Tabsheet.Font ist folgendes eingetragen:
Charset = Default_Charset
Name = Microsoft Sans Serif

khh 6. Feb 2009 11:13

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Zitat:

Zitat von UlrichK
Hallo,
beide Rechner sind 32 Bit Versionen.
bei den Tabsheet.Font ist folgendes eingetragen:
Charset = Default_Charset
Name = Microsoft Sans Serif

und die Schrift ist auf dem Rechner auf dem nichts angezeigt wird worhanden ?

UlrichK 6. Feb 2009 11:24

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Es wird überprüft, ob die Schriftart vorhanden ist.

Ich war davon ausgegangen, dass gerade diese Schrift auf jedem Windows-Rechner vorhanden ist.
Deshalb habe ich das nicht geprüft. Wird aber jetzt nachgeholt.

UlrichK 6. Feb 2009 11:55

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Die Schriftart ist MS Sans Serif ist vorhanden.
Buttons und Labels mit der gleichen Schriftart werden korrekt angezeigt.

khh 6. Feb 2009 12:26

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Zitat:

Zitat von UlrichK
Die Schriftart ist MS Sans Serif ist vorhanden.
Buttons und Labels mit der gleichen Schriftart werden korrekt angezeigt.

mh,
ist der Programmablauf auch identisch? werden die labels(Tabbbeschriftungen) zur laufzeit erzeugt?

UlrichK 6. Feb 2009 12:41

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Hallo khh,
Es ist das identische Programm.
Die Captions sind im vcl-objekt definiert und werden im Programm nicht neu gesetzt.

khh 6. Feb 2009 13:50

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Zitat:

Zitat von UlrichK
Hallo khh,
Es ist das identische Programm.
Die Captions sind im vcl-objekt definiert und werden im Programm nicht neu gesetzt.

dann schick uns doch mal ein stück code damit das vieleicht nachvollziebar wird.

Gruss Kh

UlrichK 6. Feb 2009 15:18

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Hallo kh
Die exe hat mehrere tausend zeilen.
Was soll ich denn da schicken?

Bernhard Geyer 6. Feb 2009 16:15

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Zitat:

Zitat von UlrichK
Hallo kh
Die exe hat mehrere tausend zeilen.
Was soll ich denn da schicken?

Durch Erstellen eines abgespeckten Testprogrammes. Einfach das Problematische Formular als Haupt/erstes "Unterformular" eines Testprogramms verwenden und dann soviel Quellcode (am besten allen eigenen Code löschen) verwenden wie nötig ist um den Fehler zu provozieren.

UlrichK 8. Feb 2009 10:38

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Die Lösung ist da.
Es hat ein bisschen gedauert, aber nun werden alle Captions wieder angezeigt.
Ich habe bei dem PageControl im Ereignis OnChange folgende Zeile hinzugefügt:

Form1.PageControl1.Repaint;

Immer wenn die Tabsheets gewechselt werden, wird nun das gesamte PageControl neu gezeichnet.
Ob das elegante Programmierung ist, weiß ich nicht - aber es funktioniert.

Vielen Dank an Alle.

Bernhard Geyer 8. Feb 2009 11:26

Re: Vista: Tabsheet.Caption wird nicht angezeigt
 
Zitat:

Zitat von UlrichK
Ob das elegante Programmierung ist, weiß ich nicht - aber es funktioniert.

Es ist es nicht. Aber als kurzfristiger Workaround um ein ungelöstes Problem zu umgehen ist es Ok. Irgendo im DeveloperNetwork bei Codegear steht was mit Tabsheets und zeichenproblem. AFAIK war das aber nur bei 64-Bit Systemen der Fall.
Evtl. ist es aber eine Nebenwirkung dieses Bekannten QC-Eintrags


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:34 Uhr.

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