AGB  ·  Datenschutz  ·  Impressum  







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

Listview verhält sich komisch

Ein Thema von Vienesko · begonnen am 11. Jan 2018 · letzter Beitrag vom 11. Jan 2018
Antwort Antwort
Benutzerbild von Gollum
Gollum

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

AW: Listview verhält sich komisch

  Alt 11. Jan 2018, 10:43
Hallo,

die Werte in den Subitems sind als String gespeichert. Wenn du Zahlen vergleichen willst, musst Du die Strings vorher umwandeln.
Falls es Integer-Werte sind, müsste folgendes funktionieren:

Delphi-Quellcode:
  if StrToInt(Item.SubItems[2])<StrToInt(Item.SubItems[3]) then
    Sender.Canvas.Brush.Color := clYellow
  else if DateToStr(Date) = Item.SubItems[4] then
    Sender.Canvas.Brush.Color := clRed
  else
   Sender.Canvas.Brush.Color := clWindow;
  Mit Zitat antworten Zitat
Vienesko

Registriert seit: 21. Mai 2017
Ort: Hamburg
13 Beiträge
 
#2

AW: Listview verhält sich komisch

  Alt 11. Jan 2018, 13:38
Das ging ja schnell

Vielen Dank. Hat super geklappt und läuft jetzt.

Aber wo wir schon bei Listview sind:
In einer anderen Listview werden ebenfalls Einträge aus einer MySQL Datenbank geladen und angzeigt. Das sind Artikel. Sie haben einen Namen, einen Hersteller, Preise usw und eben auch einen Lieferanten. Die Einträge werden in der Listview nach Lieferant sortiert.

Ich möchte jetzt in die Listview eine Zeile zwischenschießen, mit dem Lieferanten. Quasi als Überschrift.
Ich könnte natürlich auch eine weitere Spalte hinzufügen und dort den Lieferanten anzeigen lassen jedoch ist dafür auf meiner Oberfläche kein Platz.

Ich habe schon den Befehl Listview.Items.Insert gefunden weiß damit aber nichts so recht damit anzufangen.

Es soll im Grunde so aussehen:
Lieferant A:
Artikel 1 | Hersteller X
Artikel 2 | Hersteller X
Artikel 3 | Hersteller Y
Lieferant B:
Artikel 4 | Hersteller X
Lieferant C:
Artikel 5 | Hersteller X
Artikel 6 | Hersteller Y
usw

Habt ihr da eine Idee?
Vielen Dank

Geändert von Vienesko (11. Jan 2018 um 13:42 Uhr)
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.558 Beiträge
 
Delphi 7 Professional
 
#3

AW: Listview verhält sich komisch

  Alt 11. Jan 2018, 14:30
In der Delphi-7-Hilfe findet sich dazu folgendes Beispiel:
Delphi-Quellcode:
Im folgenden Beispiel wird in eine Listenansicht ein neues Element eingefügt, und zwar direkt nach dem markierten Eintrag.

procedure TForm1.Button1Click(Sender: TObject);

var InsertItem : TListItem;
begin
  with ListView1 do
    InsertItem := Items.Insert(Selected.Index);
  InsertItem.Caption := Edit1.Text;

end;
Würde bei Dir doch dann "nur" heißen:
Passende Stelle im ListView suchen
Delphi-Quellcode:
var InsertItem : TListItem;
iIndex : Integer;
begin
  iIndex := irgendeinwertvon0bisItemsCount-1; // Der Index des auszuwählenden Eintrages.
  InsertItem := ListView1.Items.Insert(iIndex);
  InsertItem.Caption := 'Lieferant A:// oder wie auch immer.
end;
Oder beim Befüllen des Listviews aus der Datenbank immer dann, wenn ein neuer Lieferant auftaucht, eine Zeile mit dem Lieferantennamen einfügen und erst dann die Artikel. Sprich: Beim ersten Artikel eines Lieferanten werden zwei Zeilen erzeugt. Dann muss man auch nicht nachher suchen, ob und ggfls. wo man noch was einfügen muss.
  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 14:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz