AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Anwendung mit VCL-Style "steht über" wenn Fenster maximiert
Thema durchsuchen
Ansicht
Themen-Optionen

Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

Ein Thema von Codehunter · begonnen am 14. Mär 2018 · letzter Beitrag vom 15. Mär 2018
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#1

Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 14:11
Hallo!

Mir ist gerade aufgefallen, dass Fenster die mit einem VCL-Style angezeigt werden, etwas "überstehen" wenn sie maximiert werden. Das Bild unten zeigt einen Ausschnitt vom sekundären Bildschirm. Im Hintergrund sieht man den Windows-Explorer. Der grüne Rand links ist eigentlich ein Stück vom MainForm, das mit dem Metropolis UI Green Style versehen ist und auf dem primären Bildschirm maximiert wurde.

Im Bitmap-Stil-Designer scheint deswegen sogar etwas "getrickst" worden zu sein: Unter Objects->Form->Image->LeftBorder, RightBorder, BottomBorder sind "Abstandhalter" gesetzt, die genau die Breite haben die bei maximierten Fenstern "übersteht". Ansonsten würden wohl Scrollbars vom Bildschirm verschwinden?

Grüße
Cody
Miniaturansicht angehängter Grafiken
image18.png  
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 14:18
Das kannte ich von Windows 7 auch von (allen) anderen Anwendungen. Fenster auf Monitor 1 maximiert -> auf Monitor 2 werden Pixel dessen Rahmens sichtbar.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 14:24
Ist ein Windows 10 und da ist mir das bisher noch bei keiner einzigen Anwendung aufgefallen. Für gewöhnlich verwende ich gar keine VCL-Styles sondern nur Windows-native. Daher hats mich bisher nicht betroffen. Aber jetzt solls mal eine Anwendung mit Custom Style sein.

Ein Excel 2016 verwendet ja auch so eine Art Custom Style, wenn auch natürlich nicht VCL-basiert. Da habe ich diesen "Überstand" nicht.
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 15:08
Ich denke, dass das mit dem Schattensystem zu tun hat.

Windows macht die Fenster offenbar größer als sie eigentlich sein sollen und lässt einen transparenten Rand um das eigentlich gezeichnete Fenster. Dort wird dann ggf. der Schatten gezeichnet.

Daher sind die Anfasser für die Fenstergrößenänderungen auch unter und neben dem sichtbaren Fenster.

Ein Custom Style zeichnet den Inhalt möglicherweise in die gesamte verfügbare Fläche, ohne zu beachten, dass dort noch ein transparenter Rand berücksichtigt werden muss.

Das finde ich eine denkbar schlecht Lösung. Aber ich kann mir schwer vorstellen, dass MS daran nochmal etwas ändern kann, da eine solche Änderung sich auf laufende Programme auswirken könnte.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 15:12
Ich hatte gleiches Phänomen/Problem das ein paar meiner Anwendungen nun sichtbar einen transparenten Rand besaßen, ich musste auf CS_DROPSHADOW verzichten damit alles wieder normal Dargestellt wird.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#6

AW: Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 15:17
Wenn der VCL-Style Titelleiste und Rahmen selber malt, dann ist "real" das Fenster größer.
Bei sowas pfuschen einige Styles und malen den Ramen auch dann, wenn er eigentlich nicht vorhanden ist und somit steht er auch über, wenn er stattdessen nur das Fenster vergrößert.

Windows läßt "inzwischen" halt seinen eigenen Rahmen weg und steht dann nicht über,
aber nur wenn das Fenster "wirklich" maximiert ist und nicht nur zufällig der Clientbereich die Größe des Monitors hat.
$2B or not $2B

Geändert von himitsu (14. Mär 2018 um 15:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 17:42
An der Schattensache könnte was dran sein. Kein einziger der VCL-Styles zeichnet einen Schatten um das Fenster. Die Metro-Styles wirken regelrecht platt. Erst recht wenn zwei gleichfarbige Fenster übereinander liegen. Jetzt ist die Frage, kann man da an den Styles was nachjustieren mit dem Editor oder gibt es evtl. Runtimeseitig Workarounds?
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#8

AW: Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 18:26
Diesen Effekt kenne ich aber auch schon von meinen mit Delphi 7 geschriebenen Programmen unter Windows XP.
Einfache "billige" VCL-Anwendungen maximieren und man hat ein bisserl vom Rand auf dem zweiten Bildschirm.

Bei Software, die nicht mit Delphi geschrieben wurde, ist mir das bisher noch nicht aufgefallen.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 20:03
[OT?]
Einfache "billige" VCL-Anwendungen maximieren und man hat ein bisserl vom Rand auf dem zweiten Bildschirm.
Gab es damals eine Lösung für Delphi?
[/OT?]
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#10

AW: Anwendung mit VCL-Style "steht über" wenn Fenster maximiert

  Alt 14. Mär 2018, 20:55
Hab' mir nie die Mühe gemacht danach zu suchen.

Das fiel eh nur auf, wenn der zweite Bildschirm ansonsten leer war oder die dort laufenden Programm ca. 3 bis 10 Pixel (oder so) vom linken Rand entfernt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:32 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