Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Windows 10 Darstellungsprobleme (https://www.delphipraxis.net/186108-windows-10-darstellungsprobleme.html)

bcvs 4. Aug 2015 09:56

Windows 10 Darstellungsprobleme
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,

meine D2007-Anwendung hat einige seltsame Darstellungsprobleme unter Windows 10:

- Forms, die ein Panel als Parent haben, erscheinen im Stil von Windows 7. (Das war auch schon unter Win 8 der Fall, hat aber bisher niemanden gestört). Ich habe also eine friedliche Koexistenz von alten und neuen Fensterstilen.

- Das TDBGrid löscht den Datensatzmarker eines einmal angeklickten Record nicht mehr.

s. Screenshot

Ist das bekannt? Hilft da vielleicht ein Manifest oder ist D2007 zu alt für Win 10?

Sunec 4. Aug 2015 10:12

AW: Windows 10 Darstellungsprobleme
 
Du könntest ein wenig mit
Delphi-Quellcode:
GWL_EXSTYLE
und
Delphi-Quellcode:
STYLE
rumspielen und die Forms dementsprechend anpassen.

https://msdn.microsoft.com/en-us/lib...=vs.85%29.aspx
https://msdn.microsoft.com/en-us/lib...=vs.85%29.aspx

bcvs 4. Aug 2015 11:45

AW: Windows 10 Darstellungsprobleme
 
Neuere Erkenntnisse:

Das Problem mit dem DBGrid stammt nicht aus dem originalen Grid, sondern aus dem JvDBGrid, dass ich verwende. Die neueste Version davon zeigt aber überhaupt keinen Indikator mehr.

Mit UseXPThemes:=false wäre es OK, aber dann sieht es schon sehr altbacken aus.

bcvs 5. Aug 2015 10:39

AW: Windows 10 Darstellungsprobleme
 
Zitat:

Zitat von Sunec (Beitrag 1310889)
Du könntest ein wenig mit
Delphi-Quellcode:
GWL_EXSTYLE
und
Delphi-Quellcode:
STYLE
rumspielen und die Forms dementsprechend anpassen.

Und was soll ich da anpassen? Es geht mit ja um den grundlegenden Fensterstil (Win7 vs. Win8 bzw. 10)

Zum ausprobieren: (Windows 8 oder 10, Delphi 2007)

Form1 mit einem Panel und einem Button drauf
Form2 mit beliebigen Controls drauf

Im OnClick des Button:

Delphi-Quellcode:
procedure TForm1.BtnWindowClick(Sender: TObject);
var Form2:TForm2;
begin
  Form2:=TForm2.create(Application);
  Form2.Parent:=Panel1; // mit dieser Zeile: Form2 sieht aus wie Win7
                        // ohne diese Zeile: Form2 sieht aus wie Win8 bzw 10
  Form2.Show;
end;
Wie bekomme ich es hin, dass Form2 immer korrekt aussieht, je nach Windows-Version, auch wenn es auf einem Panel liegt. Ist ja übrigens interessant, dass auch in Win10 der Win7-Stil noch irgendwie vorhanden ist.

Das DBGrid-Problem habe ich jetzt durch Eingriffe in den Quellcode von TJvDbGrid gelöst.

bcvs 6. Aug 2015 08:33

AW: Windows 10 Darstellungsprobleme
 
Liste der Anhänge anzeigen (Anzahl: 1)
Noch ein Nachtrag:

MDI-Children haben das selbe Verhalten. Die Fenster sehen aus wie Win7 (oder sogar VISTA?)

Das betrifft auch andere MDI-Programme (s. Screenshot)

Scheint ein generelles Verhalten von Windows zu sein. Sieht trotzdem seltsam aus.

jaenicke 6. Aug 2015 08:43

AW: Windows 10 Darstellungsprobleme
 
Ach darum geht es. Das ist allerdings normal so, das sah ja auch schon unter Vista wie Vista Basic aus, auch wenn Aero an war.

MDI ist eben veraltet, da wird wohl nichts mehr in der Richtung weiterentwickelt.

baumina 6. Aug 2015 08:45

AW: Windows 10 Darstellungsprobleme
 
MDI gehört nun auch schon ne Weile zum alten Eisen und sollte seit Windows 95 nicht mehr eingesetzt werden.

Sherlock 6. Aug 2015 08:51

AW: Windows 10 Darstellungsprobleme
 
Ich persönlich finde MDI eine Klasse Sache. Was daran so schlimm sein soll, hat mir noch keiner schlüssig erklären können.

Sherlock

bcvs 6. Aug 2015 10:00

AW: Windows 10 Darstellungsprobleme
 
Mir geht es ja auch nicht um MDI selbst. Das war ja nur ein Test. Aber wie weiter oben beschrieben, hätte ich gerne, dass ein Form mit Parent:=irgendwas genauso aussieht wie ohne Parent.

jaenicke 6. Aug 2015 10:35

AW: Windows 10 Darstellungsprobleme
 
Das wirst du AFAIK nicht hinbekommen, es sei denn du zeichnest den Rahmen selbst in dem Stil nach.

Satyr 7. Aug 2015 12:00

AW: Windows 10 Darstellungsprobleme
 
Ich habe mich ein wenig geärgert das manche Komponenten skaliert wurden. Übergangsweise helfe ich mir mit den AlphaSkins. Da einfach einen Windows7 oder Windows 8 Skin nehmen und (für mich) sieht alles aus wie es soll.
Sicher keine Dauerlösung, hilft mir aber momentan.

Bernhard Geyer 7. Aug 2015 13:10

AW: Windows 10 Darstellungsprobleme
 
Hä? Windows Skaliert nur wenn große schriftarten eingestellt sind und dann (vom Prinzip) nicht anders als seit Windows 95

Satyr 7. Aug 2015 13:20

AW: Windows 10 Darstellungsprobleme
 
Bei einigen meiner Anwendungen wurde der freie Platz zwischen Titelleiste und Anwendung sowie Zwischenräume zwischen Komponenten leicht vergrößert. Aber nicht bei allen und komischerweise nicht immer.

Bernhard Geyer 7. Aug 2015 14:40

AW: Windows 10 Darstellungsprobleme
 
Zitat:

Zitat von Satyr (Beitrag 1311424)
Bei einigen meiner Anwendungen wurde der freie Platz zwischen Titelleiste und Anwendung sowie Zwischenräume zwischen Komponenten leicht vergrößert. Aber nicht bei allen und komischerweise nicht immer.

Hat jeder deiner Anwendungen ein W10-Erweitertes Manifest. Falls nein wird deine Anwendung gezoomt, aber du bekomst davon nichts mit falls große Schriftart eingestellt ist.

Satyr 7. Aug 2015 14:49

AW: Windows 10 Darstellungsprobleme
 
Hm eigentlich schon. Aber ich prüf noch mal ob da vielleicht irgendetwas fehlerhaft ist.
Die Windows Schriftgröße habe ich nicht geändert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:57 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