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 ListView: subitems editieren? (https://www.delphipraxis.net/23873-listview-subitems-editieren.html)

Pseudemys Nelsoni 11. Jun 2004 00:01


ListView: subitems editieren?
 
hi,

wie ihr ja sicher wisst kann man das erste item einer listview normal editieren wenn man es markiert und daraufhin nochmal anklickt, nur wie mache ich das mit einem subitem? man kann es weder editieren geschweige denn editieren. Hoffe nicht das man dazu eine fremde Kompo ziehen muss, ich benutze immer geran die bordmittel...

http://www.n1ght.de/ablage/hmz.jpg

so möchte ich das subitem markieren können...

Luckie 11. Jun 2004 00:18

Re: ListView: subitems editieren?
 
So wie die Caption wird es nicht gehen. Da musst du wohl über eine zweite Form mit entsprechenden Eingabefeldern gehen.

Pseudemys Nelsoni 11. Jun 2004 00:21

Re: ListView: subitems editieren?
 
das ist ja doof. sch**** unvollständige komponente :?

Christian Seehase 11. Jun 2004 17:55

Re: ListView: subitems editieren?
 
Moin Pseudemys Nelsoni,

beschweren musst Du Dich aber bei MS ;-)

Pseudemys Nelsoni 11. Jun 2004 18:01

Re: ListView: subitems editieren?
 
werd ich machen :mrgreen:

btw: das:

Zitat:

man kann es weder editieren geschweige denn editieren
erstere sollte "markieren" heissen. :oops:


btw²: könnte man eine eigene kompo schreiben die das kann? wenn ja, wäre das viel aufwand?

Christian Seehase 11. Jun 2004 18:07

Re: ListView: subitems editieren?
 
Moin Pseudemys Nelsoni,

ginge wohl. Schau Dir doch, z.B., nur mal SynEdit an, die ist, wenn ich nicht irre, auch von Grund auf selbst entwickelt.
Eine Idee dazu:
Als Basis den "normalen" ListView nehmen, und dann anhand der Position des Cursors die entsprechenden Felder im ListView markieren.
Zum editieren könnte man es eventuell so ähnlich machen, wie beim einblenden spezieller Komponenten in einem StringGrid (hatten wir schon ein paar mal, nur das man eben statt einer ComboBox oder eines Buttons, ein Editfeld nimmt.
Oder das ganze gleich mit einem StringGrid lösen.

Für eine Diskussion über eine entsprechende Kompo empfiehlt sich dann aber wohl ein neuer Thread in VCL-Komponenten ;-)

rsilo 11. Jun 2004 18:11

Re: ListView: subitems editieren?
 
Es müsste eine Eigenschaft RowSelect geben, die musst du auf True setzen.

Die Eigenschaft Style hast du ja schon auf vsReport

Es gibt auch noch eine Eigenschaft die Editing oder so heißt (schau bitte im ObjectInspektor) nach, ich glaube sie heißt ReadOnly, dann kanst du verhindern dass man die Caption editieren kann.

rsilo

Pseudemys Nelsoni 11. Jun 2004 18:22

Re: ListView: subitems editieren?
 
hallo chris,

danke für deine antwort, 2 fragen habe ich dazu noch, wenn man eine komponente von grund auf neu macht, wie funktioniert das genau? wird das alles per canvas gemacht?
Zur zweiten, wenn ich eine neue Kompo von TListView ableite und die position eines subitems der listview markieren möchte, wie ermittle ich da das ich mit der maus über einem solchem bin?

@rsilo: ich möchte das editieren ja nicht verhindenr, eher das gegenteil *g*

rsilo 11. Jun 2004 18:26

Re: ListView: subitems editieren?
 
ListView1.Selected gibt dir das ListItem zurück.

Wenn du ListView1.Items.IndexOf(ListView1.Selected) müsste er dir den Index des ausgewählten Items liefern

rsilo

Christian Seehase 11. Jun 2004 18:31

Re: ListView: subitems editieren?
 
Moin Pseudemys Nelsoni,

Zitat:

Zitat von Pseudemys Nelsoni
wenn man eine komponente von grund auf neu macht, wie funktioniert das genau? wird das alles per canvas gemacht?

das hab' ich auch noch nicht gemacht, würde aber mal denken, dass sich die Frage mit JA beantworten lässt.
Wirf doch mal einen Blick in die SynEdit Sourcen.

Zitat:

Zitat von Pseudemys Nelsoni
...wie ermittle ich da das ich mit der maus über einem solchem bin?

das kann ich Dir so aus dem Stand leider auch nicht beantworten.
Hier wären wohl am Besten die Abmessungen des ListViews im Ganzen zu berücksichtigen, auch die Breite von Rändern (GetSystemMetrics), dann das vorhandensein von GridLines, die Zeilenhöhe und Spaltenbreite.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:07 Uhr.
Seite 1 von 2  1 2      

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