AGB  ·  Datenschutz  ·  Impressum  







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

TListView und Spalte

Ein Thema von Schwedenbitter · begonnen am 29. Okt 2009 · letzter Beitrag vom 4. Nov 2009
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#11

Re: TListView und Spalte

  Alt 30. Okt 2009, 09:13
Hallo,

die aktuell gewählte Zeile des Listview bekommst Du so:
  row:=ListView1.Selected.Index;
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#12

Re: TListView und Spalte

  Alt 30. Okt 2009, 09:45
Zitat von Gollum:
Hallo,
die aktuell gewählte Zeile des Listview bekommst Du so:
   row:=ListView1.Selected.Index;
@Gollum
Boxberg = Das Boxberg in Sachsen?

Ich habe den Tipp gern aufgenommen. Allerdings bekomme ich jetzt immer eine nicht näher definierte EAccessViolation (Zugriffsverletzung bei Adresse ...). Es kann nur an Selected.Index liegen, denn davor lief die Procedure zumindest durch. Gibt es da noch etwas zu beachten?

Gruß, Alex
Alex Winzer
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

Re: TListView und Spalte

  Alt 30. Okt 2009, 09:58
Das CurCol hatte schon seine Berechtigung. Nach Ablauf der Schleife ist i nicht definiert, so dass ich mir Treffer in CurCol merke. Außerdem steht dort der Initialwert -1 drin, wenn es keinen Treffer gab.
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
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#14

Re: TListView und Spalte

  Alt 30. Okt 2009, 10:56
Zitat von Schwedenbitter:
@Gollum
Boxberg = Das Boxberg in Sachsen?
Nein, Boxberg, Baden Württemberg.

Bzgl. Deiner EAccessViolation bin ich etwas verwundert. Die entsprechende Zeile müsste doch markiert sein (OnMouseDown).

Überprüfe einmal mit
Delphi-Quellcode:
  if (ListView1.Selected<>nil) then
    ShowMessage(IntToStr(ListView1.Selected.Index));
ob die entsprechende Zeile überhaupt markiert ist.
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#15

Re: TListView und Spalte

  Alt 31. Okt 2009, 09:39
Danke, das war es:

Zitat von Gollum:
Überprüfe einmal mit ...
ob die entsprechende Zeile überhaupt markiert ist.
War sie nicht, bis ich dann RowSelect:=True; gesetzt hatte. Jetzt klappt es. Ich habe aber immer den Balken blau. Gibt es auch eine Möglichkeit ohne RowSelect?

Dann habe ich mal eine Frage zum Einbinden von Objekten:
Ich habe anhand dieses Threads herausgefunden, dass man z.B. auch eine TCheckBox einbinden kann. Bei mir klappt das aber nur in der ersten Spalte, wo es die TListView ja schon selbst unterstützt sowie noch in der zweiten Spalte. Wenn ich in dem folgenden Code I durch 1 bzw. 2 ersetze, kommt die CheckBox dann wieder in der 1. Spalte
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
Var
   I            : Integer;
   Bereich      : TRect;
   CB            : TCheckBox;
begin
   I:=0;
   ListView1.Items.Add.Caption:='Test';
   Bereich:=Listview1.Items[Pred(ListView1.Items.Count)].DisplayRect(drBounds);
   Bereich.left:=Bereich.Left + Listview1.columns[I].Width;
   Bereich.right:=Bereich.Left + Listview1.columns[Succ(I)].Width;
   CB:=TCheckBox.Create(self);
   CB.Parent:=Listview1;
   CB.BoundsRect:=Bereich;
   CB.Checked:=True;
   Listview1.items[Pred(ListView1.Items.Count)].Data:=CB;
end;
Kann mir bitte da jetzt noch jemand einen Tip geben?

Denn dann müsste ich das nicht mehr - wie geplant - mit den Bildchen (ImageIndex) machen, sondern könnte direkt CheckBoxen in jeder Spalte verwenden...

Gruß, Alex
Alex Winzer
  Mit Zitat antworten Zitat
Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#16

Re: TListView und Spalte

  Alt 4. Nov 2009, 22:17
Ich habe es jetzt fertig. Für alle die, die es gebrauchen können, habe ich den Quelltext beigefügt.

Ich würde mich aber immer noch freuen, wenn mir jemand einen Hinweis geben könnte, wie ich es mit TCheckBox in der Liste hinbekommen kann ...

Gruß, Alex
Angehängte Dateien
Dateityp: zip printbox_p_750.zip (2,2 KB, 6x aufgerufen)
Alex Winzer
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 19:17 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