Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Ränder werden abgeschnitten (https://www.delphipraxis.net/70495-raender-werden-abgeschnitten.html)

moelski 31. Mai 2006 06:08


Ränder werden abgeschnitten
 
Liste der Anhänge anzeigen (Anzahl: 1)
Moin !

Ich habe in unserer Software ein merkwürdiges Problem und weiss im Moment nicht so ganz wo ich ansetzen soll. Deswegen hoffe ich, das mir hier jemand einen Tip geben kann ... :roll:

Also, es kommt in letzter Zeit vermehrt vor, dass die Ränder unserer Grafik abgeschnitten werden. Den Entwickler der Komponente habe ich schon kontaktiert. Ihm ist das Problem nicht bekannt und er meint es liegt auch nicht an der Komponente. Das kann auch irgendwie nicht recht sein, denn die Vorversion unserer Software hatte dieses Problem komischerweise nicht ...

Unter Win9x kann ich das Problem sofort reproduzieren. Da habe ich zunächst gedacht es läge an den alten Systemen. Aber dann kamen vereinzelt Meldungen hoch das es eben auch auf XP Rechnern passiert. Und was die Sache so verwirrend macht ... Es passiert eben nicht überall. Scheinbar sind nur ein paar Rechner betroffen. Mein XP Lappi z.B. hat keinerlei Probleme.

Im Anhang noch ein Bild. Dort kann man gut erkennen, dass rechts und unten die Achsen abgeschnitten und die Zaheln nicht richtig erkennbar sind.

Noch kurz zum Aufbau ...
Also, ich habe ein Formular, logisch ...
Darauf ist dann ein Panel. Auf dem Panel ist ein Pagecontrol.
Auf einer Seite des Pagecontrols liegt dann die Grafikkomponente.

Align & Anchors ...
Panel -> alNone, Anchors alle aktiv
Pagecontrol -> alNone, Anchors alle aktiv
TabSheet -> hat diese Einstellungen logischerweise nicht
Grafikkomponente -> alClient, Anchors alle aktiv

Kann da jemand was zu sagen??

mkinzler 31. Mai 2006 06:51

Re: Ränder werden abgeschnitten
 
Haben die verschiedenen Rechner zufällig verschieden große Schrifteinstellungen?

marabu 31. Mai 2006 06:53

Re: Ränder werden abgeschnitten
 
Hallo Dominik,

bist du sicher, dass die Ränder abgeschnitten werden? Ist es nicht eher so, dass die Schrift falsch positioniert wird? Da würde ich mal ansetzen. Am besten du schreibst dir die relevanten Werte in ein Debug-Logfile.

Die Angaben zu den verwendeten Komponenten und ihren Anchors hilft mir nicht, da ich sie auf dem Screenshot nicht erkennen kann. Außerdem sind die Angaben nicht unmissverständlich.

Grüße vom marabu

moelski 31. Mai 2006 07:10

Re: Ränder werden abgeschnitten
 
Moin!

Zitat:

Haben die verschiedenen Rechner zufällig verschieden große Schrifteinstellungen?
Nein, das würde ich erstmal ausschliessen. Denn wenn ich z.B. ein 9x installiere, steht die Schrift immer auf 100% und da kriege ich den Fehler ja auch.

Zitat:

bist du sicher, dass die Ränder abgeschnitten werden? Ist es nicht eher so, dass die Schrift falsch positioniert wird?
Nein, es sind def. die Ränder. Die Schriftpositionierung kann ich garnicht beeinflussen und auf einer Vielzahl von Rechnern geht ja auch alles sauber. Es sind def. abgeschnittene Ränder.

Zitat:

Am besten du schreibst dir die relevanten Werte in ein Debug-Logfile.
Welche Werte meinst du damit? Wie gesagt, ich habe keinen Einfluss auf diese Schrift. Die wird von der Grafikkompo autom. gesetzt.

marabu 31. Mai 2006 07:45

Re: Ränder werden abgeschnitten
 
Wenn die Achsenbeschriftung von der Grafikkomponente stammt und du keinen Einfluß nimmst, dann ist das Abschneiden vielleicht eine Folge einer Überdimensionierung der Grafik-Komponente. Sie scheint höher zu sein als die ClientArea der Form. Du könntest die ScrollBars der Form aktivieren um das zu verifizieren.

marabu

moelski 31. Mai 2006 08:03

Re: Ränder werden abgeschnitten
 
Ok, ich bin einen Schritt weiter ...
Ich teste gerade auf einem Windows 98 System, weil dort das Problem immer reproduzierbar ist.

Nochmal meine Struktur zur Veranschaulichung:

Form
--> Panel
----> PageControl
------> Seite des Pagecontrol
--------> Grafikkomponente

Das Pagecontrol steht bei mir auf Align = alNone. Nur die Anchors habe ich alle gesetzt. Dann habe ich das Pagecontrol auf dem Panel verschoben. Weil sonst die Ränder des Pagecontrolls bzw. dessen Seiten zu sehen wären.
Wenn ich dieses Verschieben aufhebe und Pagecontrol.Align = alClient setze und die Grafikkomponente auch auf Align = alClient, dann schaut alles super aus. Sprich, ich habe keinen abgeschnitteten Text mehr.

Gegentest ..
Ich habe beim PageControl Align wieder auf alNone gestellt. Dann das Pagecontrol auf dem Panel verschoben so das meine Optik wieder passt und siehe da, der Text ist wieder abgeschnitten (Anmerkung: Auf meinem XP Rechner sieht es aber nachwievor sauber aus).

Tja, nun weiss ich zwar in etwa wo der Hase begraben ist, aber was nun tun? Da ich mehrere Seiten in meinem Prog umschalten muss, kann ich ja nicht einfach mein PageControl wegwerfen? :gruebel:

Hat jemand ne Idee, wie ich nun aus diesem Schlamassel komme? :cyclops:

alzaimar 31. Mai 2006 08:17

Re: Ränder werden abgeschnitten
 
Moin,

ich habe ähnliche Probleme mit den Anchors, die sich einfach nicht korrekt verhalten, allerdings auch bei XP. Ich behelfe mir damit, das ich die Position der Controls zur Laufzeit (im FormCreate z.B.) korrigiere (z.b. 10 Pixel vom rechten Rand etc.).

Das ist natürlich keine Lösung, aber wenigstens klappt es so.

moelski 31. Mai 2006 08:26

Re: Ränder werden abgeschnitten
 
Moin !

Hmm, so kann man das sicherlich machen ... Aber irgendwie kanns das ja ncih sein.

Und ich sehe da auch ein Problem ... Wie erkenne ich denn, wann das Control "zu gross" ist? Muss ich die Width / Height Eigenschaft überprüfen?

Habe mir das gerade nochmals angesehen. Auf XP (hier funzt es mal ...) steht die Breite meines Panels auf 939, Das Pagecontroll auf 943. Das ist soweit ok, denn ich habe ja das Pagecontrol über das Panel vergrössert um die Rahmen wegzukriegen.

Auf 98 ist das Panel 731 Pixel breit. Das PageControl aber 762. Wie kann es kommen das da auf mal 31 Pixel Differenz sind, wo hingegen es bei dem funzenden XP nur 6 Pixel sind :gruebel:

Mir ist das ganze Verhalten nicht wirklich klar.

marabu 31. Mai 2006 11:12

Re: Ränder werden abgeschnitten
 
Kann es sein, dass der einzige Grund für deine Mischverhältnisse (Anchors und Align) der ist, dass du den 3D-Rand vom PageControl eliminieren willst?

marabu

moelski 31. Mai 2006 11:15

Re: Ränder werden abgeschnitten
 
Moin !

Zitat:

Kann es sein, dass der einzige Grund für deine Mischverhältnisse (Anchors und Align) der ist, dass du den 3D-Rand vom PageControl eliminieren willst?
Naja, ich sag mal so. Scheinbar liegt da des Übels Wurzel.

Weil wenn ich den Rand nicht elemeniere, dann geht es ja sauber.

Kennst du eine andere Möglichkeit was man da machen kann um den Rand weg zu bekommen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:50 Uhr.
Seite 1 von 2  1 2      

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 by Thomas Breitkreuz