AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE VCL Komponenten, Positionen... Delphi XE
Thema durchsuchen
Ansicht
Themen-Optionen

VCL Komponenten, Positionen... Delphi XE

Ein Thema von haentschman · begonnen am 30. Mai 2011 · letzter Beitrag vom 4. Jun 2011
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#1

VCL Komponenten, Positionen... Delphi XE

  Alt 30. Mai 2011, 21:42
Hallo alle miteinander...

gestern ist es mir mal so richtig aufgefallen...

Gegeben ein Panel, darauf 5 TEdit, alle aneinander horizontal. (kein Pixel Platz dazwischen) Zur Designzeit alles in Ordnung. Zur Laufzeit war immer ein Edit nach oben links etwa 2 Pixel versetzt. Habe ich das betroffene zur Designzeit ausgeschnitten und wieder eingesetzt wurde es zur Laufzeit richtig positioniert. Dafür tanzte ein anderes aus der Reihe Nach zig Versuchen hab ich dann das betroffene zur Laufzeit an das vorhergehende positioniert... und gut. Desweiteren habe ich auf einem Panel 2 Buttons, welche ich mit 1 Pixel Abstand zum Rand positioniert sind. Zur Laufzeit sind sie immer 3 oder 4 Pixel vom Rand weg. Margins auf 0 setzen brachte keine Änderung. Dazu kommt noch, daß ein anderer Button ab und zu mal komplett wo anders steht.

Fazit: Ich kann mich nicht darauf verlassen, daß die Designzeit mit der Laufzeit identisch ist. Kennt jemand solche Probleme auch ?


Danke...
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.589 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: VCL Komponenten, Positionen... Delphi XE

  Alt 30. Mai 2011, 22:05
Sowas passiert eigentlich nur bei widersprüchlichen Anchors-Angaben oder ähnlichem.

Oder kannst du es vielleicht in einem Demoprojekt reproduzieren um das anzuhängen?
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#3

AW: VCL Komponenten, Positionen... Delphi XE

  Alt 30. Mai 2011, 22:05
Panel oder Edit sind nicht selbst geschrieben oder Drittkomponenten? Wenn ja, dann würde ich mal im Source nachschauen, was zur Laufzeit ausgeführt werden könnte.

Ansonsten schau einfach mal in dei DFM-Datei rein, was da so drin steht. Vielleicht steckt da ja ein Fehler drin?

Oder hast du bei Align was anders als alNone?
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)

Geändert von s.h.a.r.k (30. Mai 2011 um 22:08 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#4

AW: VCL Komponenten, Positionen... Delphi XE

  Alt 30. Mai 2011, 22:16
Danke für die Tipps...

- TPanel alNone
- TEdit 3 rechts...Alignment RightJustify die 2 vorn LeftJustify (ist ja nur der Inhalt)

von den 5 werden im OnResize 2 breitentechnisch angepaßt. Die restlichen 3 sind mit Anchor Right rechts angeheftet. Bei diesen 3 tritt das auf. IM OI sind die Werte für Top identisch.

Zitat:
Oder kannst du es vielleicht in einem Demoprojekt reproduzieren um das anzuhängen?
ich weiß, Bilder sagen mehr als Worte... bald ist Feiertag. Da guck ich mal.

Sooo...ich beantrage dann mal Rente Ich hab die 2 Quelltextzeilen für die nachträgliche Positionierung auskommentiert um einen Screenshot zu machen... alles da wo es sein soll ! Gestern hab ich 3 Stunden mit dem Kram verbracht. Man muß dem XE erst mit der DP drohen daß das funktioniert

Geändert von haentschman (30. Mai 2011 um 22:29 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#5

AW: VCL Komponenten, Positionen... Delphi XE

  Alt 30. Mai 2011, 22:42
Hat es nun an den beiden Zeilen gelegen, oder hat sich das Problem nun einfach so "verabschiedet"?
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#6

AW: VCL Komponenten, Positionen... Delphi XE

  Alt 30. Mai 2011, 22:50
wenn ich das wüßte...Ich kann es nicht erklären.
Die 2 Zeilen waren nur dafür da den Top- Linksversatz des abtrünnigen Edits auszugleichen.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#7

AW: VCL Komponenten, Positionen... Delphi XE

  Alt 3. Jun 2011, 21:47
Guten Abend...

ich wärme das ganze nochmal auf, da ich einen abtrünnigen Button fotografisch festhalten konnte...
-> zur Laufzeit ist der Button nach oben und ganz wenig nach links versetzt.
Desweiteren hatte ich heute ein Memo was ca. 100 Pixel schmaler geworden war... usw.

Für so einen Quatsch hab ich zu wenig Zeit

Danke für Tipps...
Miniaturansicht angehängter Grafiken
design.png   runtime.png  
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie
Online

Registriert seit: 12. Aug 2003
Ort: Soest
4.017 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#8

AW: VCL Komponenten, Positionen... Delphi XE

  Alt 3. Jun 2011, 21:55
Zeig mal den dfm code von dem Teil, wenn möglich
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.388 Beiträge
 
Delphi 12 Athens
 
#9

AW: VCL Komponenten, Positionen... Delphi XE

  Alt 3. Jun 2011, 22:05
Zitat:
object pngbtnLogin: TPngBitBtn
Left = 95
Top = 88
Width = 79
Height = 25
Margins.Left = 0
Margins.Top = 0
Margins.Right = 0
Margins.Bottom = 0
Anchors = [akRight, akBottom]
Caption = 'Anmelden'
DoubleBuffered = True
ParentDoubleBuffered = False
Spacing = 0
TabOrder = 2
OnClick = pngbtnLoginClick
PngImage.Data = {
89504E470D0A1A0A0000000D49484452000000100000001008 060000001FF3FF
610000001974455874536F6674776172650041646F62652049 6D616765526561
647971C9653C000002334944415478DA63FCFFFF3F03258071 7305138A003313
2303071B83312303833D902B0E157E09B4E6E08F5F0C67FFFE FB8FDF00264646
535E61A9344DC744B7672FDE7082C4A42444BE5FDF3F7FD7E7 B7CF66FDFBFFFF
348A01AB8A98D01CC550651B569573FAD09EF7D72E9EDC0312 D0D2377731B573
113CBCAA6D0A90DB8662C086326638E7ED67B0F3A67B2634A5 AD9BD3B4E7D7AF
DFEE20013636D69D4129752EDB17D4CD027233057918191861 061C68841800D2
FAE91B03C3FD97FF167B4795C6EC5CD5BD998D85C1EFED2706 065E2E864D9E11
E5BE9B97742E9112628C0519C0C4886940E6EF3F0C6A67EEFC 95549562FA0274
8D200B33C39FE7EFFE2B8AF2333EFEF78F81F3C3D7FF9FB464 993E7373305E02
1A3019DD806E878C4525BFBF7D67F8F5E307C3AFEF40FCF33B C3FBB7B719D8D9
1818B8382098938785E1C08A85138106146018C0AD995CC2C2 C4C4C0C2C2C2C0
C8C8C4F0F7EF1F86F7EF5F3330039570B00235030DE2E66565 B87B6C257603C8
72C1EE5AB8015D02BAC9A5C4B8E0C6A19513800614820D989F 064F07ED09CD8B
2B8871C1C2FE05DDC04828031BA028CAC8106D0636A0D72F3E B5881817CC9DB4
7C02D080C2A5C034098E4D297E46064F0D860573B6AD88FFFB EB37C31FA00BFE
005DF007E882774017B00135727020707AECEC85DB6F30243C FBF81F6C8010C8
0C47458632493E0641A0335F0BF1337E15126460E2E166E03D 7CFABF34349DC1
53DFABAF0CB7F7DD63980A643E038981320C2F10B3909893FF 00F1670008F9FB
745DCEDB950000000049454E44AE426082}
PngOptions = [pngBlendOnDisabled, pngGrayscaleOnDisabled]
end
die Werte für Top / Left sind mit dem OI identisch.

Die Werte des Bildes sind die Werte zur Laufzeit im OnShow.

Nachtrag: CnPack ist installiert. Ich tippe auf irgend einen "Optimierer"...
Miniaturansicht angehängter Grafiken
runtime1.png  

Geändert von haentschman ( 3. Jun 2011 um 22:09 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie
Online

Registriert seit: 12. Aug 2003
Ort: Soest
4.017 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#10

AW: VCL Komponenten, Positionen... Delphi XE

  Alt 3. Jun 2011, 23:03
Auch, wenn ich cnPack gern dafür verantwortlich machen würde (wär immerhin nicht das erste mal, dass es irgendwas kaputt macht) denke ich, es liegt irgendwo im Source Code. TPngBitBtn ist immerhin keine Delphi eigene Komponente, da weiß man nie. Versuchs mal spaßeshalber mit nem normalen TBitBtn, ob der auch rumzickt. Ansonsten eingrenzen und Debuggen, irgendwo müssen die falschen Werte ja herkommen. Denn eigentlich sollten sie so aus der dfm geladen werden. Danach scheint irgendwo was "nachkorrigiert" zu werden.

Oh halt! Grad, als ich auf Post klick, seh ich's! Deine Anchors. Kein Wunder, dass der Button nach links oben wandert.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  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 18:39 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