Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Spaltenresize im tlistview (https://www.delphipraxis.net/3175-spaltenresize-im-tlistview.html)

Jan 1. Mär 2003 17:44

Ich komme da einfach net weiter!
Entschuldige, dass ich ich dich grad im chat verpasst hab, aber ist halt schlecht, dass man da nix gemeldet bekommt.
Also, wenn ich alles umbenenne, und die comtrls.dcu und .pas im lib bzw. src/vcl verzeichnis lösche, dann erscheint die fehlermeldung, dass sich meine modifizierte comctrls.pas selber aufruft.
Die Unit selber habe ich auch shcon eingebunden, und die ist jetzt auch verfügbar, aber zum einen wäre es ein immenser Aufwand da jetzt mein Tlistview zu ersetzen, und zum anderen wüsste ich garnicht, wie ich da jetzt so einen modifizierten Tlistview auf meinem Form platzieren soll.
Deswegen wollte ich mal fragen, ob man nicht vielleicht meinen existierenden Tlistview einfach vom typ her während der runtime umwandeln kann. weil das ja im grunde alles das gleiche ist, nur, dass da so 10 neue procs/funcs/props sind.
Ich bin vollkommen hilflos und blick da grad 0,0garnichtmehr durch.
HELP!!
Jan

Christian Seehase 1. Mär 2003 17:45

Moin Jan,

das Beste wird sein, die Kompo aus dem SDC zu nehmen, und zu installieren.
Anschliessend nimmst Du dann halt immer diese, statt der Standard ListView Kompo.

Da dieser ListView von TListView abgeleitet ist, dürfte es ansonsten keinen Unterschied machen, nur das dann eben die neue Variante noch zusätzlich über die Resize Events verfügt.
Alles andere wäre dann wie gehabt.

Jan 1. Mär 2003 17:51

Hallo Christian,
da magst du zwar recht haben aber da stellen sich mir ja immer noch 2 Probleme, wie ich sie schon oben beschrieben habe: Ich habe keine Ahnung wo ich da jetzt die Graphische oberfläche für die neue Kompo herbekomme, und ich würde das halt gerne auch in dem Tool verwenden, an welchem ich gerade Arbeite, da dieses Hauptsächlich um den Tlistview herumgebaut ist, und mittlerweile ca 1100 zeilen code beinhaltet. Also wäre das ein riesen Aufwand für mich.
Gruß
Jan

Daniel B 1. Mär 2003 17:58

Hallo Jan,
Zitat:

Zitat von Jan
und mittlerweile ca 1100 zeilen code beinhaltet. Also wäre das ein riesen Aufwand für mich.

Du setzt die neue Komponente aufs Formular, nachdem Du die alten gelöscht hast. Jetzt gibt Du der neuen den gleichen Namen wie der alten LV. Somit ändert sich ncihts am Code und Du hast die neue Komponente. Und von den 1000 Zeilen sind mind. die hälfte eh von Delphi angelegt. ;)
So tragisch wird das schon nicht. :mrgreen: Ist ja noch im vierstelligen Bereich.
Aber es wäre am einfachsten.

Grüsse, Daniel :hi:

Jan 1. Mär 2003 18:00

und die ganzen on****-procedures?, die bereits angelegt sind? Und die Spalten, die ich dann komplett neu anlegen und resizen muss?
Naja, ich werds mal probieren..
Gruß
Jan

Christian Seehase 1. Mär 2003 19:05

Moin Jan,

welche graphische Oberfläche?
Mit dem Standardicon für visuelle Komponenten wirst Du wohl leben können. ;-)

Durch das Löschen einer Kompo vom Formular, werden die Onxxx Prozeduren nicht beeinflusst. Du müsstest sie nur bei der neuen Kompo neu zuweisen. Die eigentliche Routine bleibt ja bestehen.

Falls Du das noch nicht gemacht hast:
Auf die Seite Ereignisse des OI gehen, das entsprechende Ereignis auswählen, und dann aus der DropDown Liste das zuzuweisende Ereignis auswählen.
Bei 1100 Zeilen dürfen das nicht allzuviele in Frage kommende Prozeduren sein.

Am Besten bindest Du wohl mal die Kompo ein und probierst sie mal aus. Da es sich um einen ganz normalen ListView mit ein paar zusätzlichen Ereignissen handelt wirst Du allerdings keinen grossen Unterschied bemerken dürfen.

Jan 1. Mär 2003 21:09

Mit graphischer oberfläche meine ich: Wo finde ich jetzt den Tlistview in delphi, damit ich den platzieren kann?
Danke für alle Hilfe
Gruß
Jan

Daniel B 1. Mär 2003 22:05

Zitat:

Zitat von Jan
Mit graphischer oberfläche meine ich: Wo finde ich jetzt den Tlistview in delphi, damit ich den platzieren kann?

Wenn alles geklappt hat, musst Du nur noch die "normale" LV einfügen. Diese dürfte dann die neuen Eigenschaften haben.

Grüsse, Daniel :hi:

Jan 1. Mär 2003 22:47

neee, das ist doch nur, wenn ich den code umschreibe. Aber ich hab ja jetzt die gegebene unit einfach installiert, und weiss jetzt nicht was ich machen muss um den neuen tlistview zu erhalten.
Im Normalen listview sind die neuen Funktionen im Moment nicht enthalten.
Ich glaube so langsam, dass das Komponenten System von Delphi der letzte ***** ist, ich weiss wirklich überhaupt nicht, was ich falsch mache.
BB
Jan

Christian Seehase 2. Mär 2003 01:02

Moin Jan,

also ich hab's folgendermassen gemacht:
  1. Neue Anwendung
  2. Neue Unit
  3. Den Quellcode der neuen Unit durch den aus dem SDC ersetzen (kopiert von Unit PBExListview; bis END.), bis auf die unit unit2; Zeile
  4. nur diese zweite Unit abgespeichert, in einem Verzeichnis für die neue Kompo, dabei als PBExListView.pas benannt.
  5. Dann im Menü Komponente den Punkt Komponente installieren nehmen
  6. In neues Package (den Pfad aus der Seite "in bestehendes Package" übernehmen)
  7. den Pfad zu der PBExListView.pas raussuchen
  8. Kompilieren und installieren bestätigen
  9. Jetzt befindet sich die neue Kompo in der Komponentenpalette im Reiter PBGoodies

Wenn man in der Prozedure Register eine andere Stelle angibt wird sie dort gespeichert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:22 Uhr.
Seite 2 von 3     12 3      

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