AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Desingntime, aber nicht Runtime

Ein Thema von Mattze · begonnen am 16. Mär 2015 · letzter Beitrag vom 23. Mär 2015
Antwort Antwort
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#1

Desingntime, aber nicht Runtime

  Alt 16. Mär 2015, 09:59
Hallo,

komisch, eigentlich hatte ich bisher immer das umgekehrte Problem... (D7 pro)

Ich habe eine eigene Listview-Komponente von TCustomlistview abgeleitet.
Da kann ich auch die Headerhöhe setzen (unter anderem).
Das klappt auch ganz gut - während der Designtime.
Während der Runtime ist da plötzlich wieder die alte Höhe.

Wie geht denn sowas?
Was kann man dagegen tun?

(Übrigens: Ich kann die Headerheight zwar während der Designtime verändern, sie wird aber wahrscheinlich nicht abgespeichert! Jedenfalls wird danach nicht zum Speichern aufgefordert. Was tun?)

Gruß
Mattze
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Desingntime, aber nicht Runtime

  Alt 16. Mär 2015, 10:05
... wird aber wahrscheinlich nicht abgespeichert!
Was tun?)
Erstmal ein definitiv daraus machen?
(was steht in der DFM)

Wurden die gewünschten Property auch nach Published verschoben, welche gespeichert werden sollen?



Und weiter können wir nicht weiter helfen, da keiner weiß was du gemacht hast, in deiner eigenen geheimen Komponente.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (16. Mär 2015 um 10:10 Uhr)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Desingntime, aber nicht Runtime

  Alt 16. Mär 2015, 10:06
Zitat:
(Übrigens: Ich kann die Headerheight zwar während der Designtime verändern, sie wird aber wahrscheinlich nicht abgespeichert! Jedenfalls wird danach nicht zum Speichern aufgefordert. Was tun?)
Du wirst nie dazu aufgefordert werden, wenn du angegeben hast, ghast die Eigenchaft gestreamt werden soll ( buw. nicht das sie das nicht) wird diese beim Speichern des Formulars der Wert dort entsprechend abgelegt.

Wie sieht die Definition der Property aus?
Markus Kinzler
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#4

AW: Desingntime, aber nicht Runtime

  Alt 16. Mär 2015, 10:59
Hallo himitsu,

nee!!! Geheim ist die überhaupt nicht.
Kannst Du alles haben - ist aber zurzeit noch völlig unzumutbar! Absolutes Durcheinander. Ich bin ja froh, dass ich mich in meinem Zeug noch selber zurecht finde.
Ich bin da mächtig am Spielen...

Angefangen habe ich mit Sortarrows und dann kam eben eins zum anderen und ich wollte doch mal sehen, wie weit man den Header aufbohren kann.

Da ist kaum etwas auf meinem Mist gewachsen. Alles im Netz gefunden und zusammengepfrimelt.

Ich habe eben noch mal geschaut. Im Formular als Text steht die Headerhöhe mit dem geänderten Wert drin.
(Hätte ich vorher gucken müssen. Ich weiß! Asche auf mein Haupt!!!)
Sie wird also gespeichert.
Die Eigenschaft ist published in der Header-Klasse,die in der Ableitung genutzt wird.

Komisch ist, das sie dann beim nächsten Start wieder auf den falschen Ursprungswert gesetzt wird!

Gruß
Mattze
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#5

AW: Desingntime, aber nicht Runtime

  Alt 16. Mär 2015, 12:40
Setzt du an einer Code-Stelle einen "default"-Wert für die Höhe? Vielleicht wird zwar richtig gespeichert und gelesen, aber im Nachgang überschrieben.

Gruß oki
42
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Desingntime, aber nicht Runtime

  Alt 16. Mär 2015, 12:56
[falsch]
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (16. Mär 2015 um 13:19 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.537 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Desingntime, aber nicht Runtime

  Alt 16. Mär 2015, 13:09
Schön, dass Du mal ganz offen über alles gesprochen hast
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Mattze

Registriert seit: 6. Jan 2005
664 Beiträge
 
#8

AW: Desingntime, aber nicht Runtime

  Alt 23. Mär 2015, 08:16
Hi,

wo das Problem liegt:
Es ist kein Problem, die Headerhöhe einer Listview zu ändern:
Delphi-Quellcode:
var hdr: THandle;

begin
  hdr:=ListView_GetHeader(ListView1.Handle);
  SetWindowPos(hdr, 0   , 0, 0, Listview1.width, 50, 0 );
  InvalidateRect(hdr,nil,True);
Leider wird dann aber die linke obere Ecke der "Restlistview" (also der eigentlichen Liste) nicht automatisch angepasst. Ergebnis: Je nach dem, was gerade vorne ist, wird etwas "übermalt".

Das Rechteck der Restlistview zu bekommen, ist auch kein Problem. (Linke obere Ecke = Linke obere Ecke des Topitems).
Ich habe jedoch noch keine Möglichkeit gefunden, die auch (entsprechend der neuen Headerhöhe) zu setzen. (Dazu müsste man direkt rankommen, aber wie...?)

Man könnte natürlich im OwnerDraw alle Items verschieben. Nur, dann delegiert man das Problem nach unten. Und im Sinne des Laufzeitverhaltens wäre das wohl nicht.
Also, eine echte Lösung wäre das wahrscheinlich nicht.

Ich habe nun etwas gefunden, wie man die Itemheight insgesamt ändern kann. Vielleicht kann man damit etwas zurechtdrehen.
Mal sehen...

Gruß
Mattze
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:41 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