AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi SysListView32 sortiert automatisch
Thema durchsuchen
Ansicht
Themen-Optionen

SysListView32 sortiert automatisch

Ein Thema von Chewie · begonnen am 26. Jun 2003 · letzter Beitrag vom 27. Jun 2003
Antwort Antwort
Seite 1 von 2  1 2      
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#1

SysListView32 sortiert automatisch

  Alt 26. Jun 2003, 22:14
Ich glaub es liegt am Bier, aber ich komm einfach nicht drauf...

Ich hab ein SysListView32-Control. Ich füge einfach 10 Zahlen hinzu, von 1 bis 10. Das Control wird so erzeugt:
Delphi-Quellcode:
hIncIPView := CreateWindowEx(WS_EX_CLIENTEDGE, 'SysListView32', nil,
          WS_VISIBLE or WS_CHILD or LVS_REPORT or LVS_EX_FULLROWSELECT, 15, 40,
          465, 150, hWnd, IDC_INCIPVIEW, hInstance, nil);
Ich hab mehrere Spalten; in die erste Spalte werden Werte eingefügt:
Delphi-Quellcode:
for i := 1 to 10 do
      begin
        LVItem.mask := LVIF_TEXT; //LVItem vom Typ TLVItem
        LVItem.iItem := i;
        LVItem.pszText := PChar(InttoStr(i));
        SendMessage(hIncIPView, LVM_INSERTITEM, 0, Integer(@LVItem));
      end;

      Inc(packIndex);
In der Listview sieht es so aus:
Code:
9
8
7
6
5
4
3
2
10
1
Also absteigende Sortierung. Nur warum? Ich habe doch keine Sortierung angegeben.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#2

Re: SysListView32 sortiert automatisch

  Alt 27. Jun 2003, 07:23
Zitat von Chewie:
Ich glaub es liegt am Bier, ...
Also: Aufhören mit dem Saufen.

Zitat:
Also absteigende Sortierung. Nur warum? Ich habe doch keine Sortierung angegeben.
Das nicht, aber du hast ein Stilattribut angegeben, dass da nicht reingehört:

Zitat:
Code:
hIncIPView := CreateWindowEx(WS_EX_CLIENTEDGE, 'SysListView32', [b]nil[/b],
  WS_VISIBLE [b]or[/b] WS_CHILD [b]or[/b] LVS_REPORT [b]or[/b] [color=red]LVS_EX_FULLROWSELECT[/color], 15, 40,
  465, 150, hWnd, IDC_INCIPVIEW, hInstance, [b]nil[/b]);
Hättest du dir mal lieber Luckies LV-Demo angesehen. Die LVS_EX_xxx-Stile werden grundsätzlich so übergeben:
Delphi-Quellcode:
SendMessage(hLV,LVM_SETEXTENDEDLISTVIEWSTYLE,0,
  LVS_EX_HEADERDRAGDROP or LVS_EX_FULLROWSELECT);
  Mit Zitat antworten Zitat
MathiasSimmack
(Gast)

n/a Beiträge
 
#3
  Alt 27. Jun 2003, 07:33
Kleine Ergänzung:
Zitat:
Also absteigende Sortierung. Nur warum? Ich habe doch keine Sortierung angegeben.
Wenn man es ganz genau nimmt, dann hast du eine Sortierung benutzt:
Zitat von PSDK (CommCtrl.h):
Code:
#define LVS_SORTDESCENDING     0x0020
#define LVS_EX_FULLROWSELECT   0x00000020 // applies to report mode only
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#4
  Alt 27. Jun 2003, 10:03
OK, vielen Dank, Matthias.
Nur was macht es so einen Unterschied, wenn die LVS_EX_...-Stile nicht am Anfang, sondern anschließend übergeben werden?
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5
  Alt 27. Jun 2003, 10:10
Du hast einen erweiterten Stil (LVS_EX__...) bei den normalen Stilen (LVS_...) mit angegeben und das verträgt sich eben nicht bzw. führt zu ungewollten Verhalten des Kontrolls, wie du siehst.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#6
  Alt 27. Jun 2003, 10:20
Ach so, jetzt wirds mir klar.
Ich hab mich die ganze Zeit gewundert, warum LVS_SORTDESCENDING augenscheinlich das gleiche ist wie LVS_EX_FULLROWSELECT. Aber wenn man ersteres bei der Erstellung und zweiteres erst anschließend setzt, dann kann es unterschieden werden.

Und wieder was gelernt. Oder besser gesagt, wieder einmal festgestellt, dass es einen guten Grund hat, warum Luckie in den Tutorials etwas auf scheinbare umständliche Art und Weise tut.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#7
  Alt 27. Jun 2003, 10:25
Hallo,
Zitat:
Hättest du dir mal lieber Luckies LV-Demo angesehen. Die LVS_EX_xxx-Stile werden grundsätzlich so übergeben:
Wo finde ich dieses Demo ?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8
  Alt 27. Jun 2003, 10:29
Auf meiner Homepage. Einfach nur den richtigen Button unter dem Posting treffen und das Wunder des WWW wird dich in Windeseile zu meiner Homepage tragen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#9
  Alt 27. Jun 2003, 10:32
Hallo,
habe Deine Homepage gefunden. Wo finde ich das Demo auf Deiner Homepage ?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10
  Alt 27. Jun 2003, 10:48
Hm, jetzt mach mich nicht irre. Ist dass so schwer zu finden? Ganz oben ist eine Tabelle Tutorials. In der ersten Spalte sind die Downloads und in der Spalte Beschreibung findest du zwei Links: Inhalt (also was im Download drin ist) und Online lesen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 06:40 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