AGB  ·  Datenschutz  ·  Impressum  







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

Stringgrid inkl. Umlaute richtig sortieren

Ein Thema von Steven2 · begonnen am 14. Jul 2007 · letzter Beitrag vom 8. Sep 2007
Antwort Antwort
Seite 4 von 4   « Erste     234   
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#31

Re: Stringgrid inkl. Umlaute richtig sortieren

  Alt 6. Sep 2007, 07:58
Hallo Marabu,

schiebst du dabei die Bits um 16 stellen nach Links oder wie muss ich mir das vorstellen? Und warum funktioniert das ueberhaupt mit dem schieben?
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#32

Re: Stringgrid inkl. Umlaute richtig sortieren

  Alt 6. Sep 2007, 09:00
Ja richtig, alle Bits werden um 16 Positionen nach links verschoben - das ist eine Multiplikation mit 2 hoch 16. Das funktioniert so, weil die Multiplikation, wie jede andere Rechenoperation auch, auf Registerebene per Shift realisiert wird. Manchmal musst du aufpassen, dass du den richtigen Basistyp verwendest. Ein Byte und SHL 8 löscht effektiv das Byte, da die Bits "am linken Rand" verloren gehen und "von rechts her" mit Nullen aufgefüllt wird.

Hier ein paar Stichworte für eine Suche: Technische Informatik Schieberegister ALU.

PS: Hast du Schlafstörungen? Bei dir muss es doch zappenduster sein...
  Mit Zitat antworten Zitat
Steven2

Registriert seit: 17. Nov 2006
94 Beiträge
 
Delphi 11 Alexandria
 
#33

Re: Stringgrid inkl. Umlaute richtig sortieren

  Alt 6. Sep 2007, 11:45
Danke Marabu, das müßte nun wirklich funktionieren...sieht hier auch gut aus.
Danke !!!

Viele Grüße
Steven
  Mit Zitat antworten Zitat
Benutzerbild von Mackhack
Mackhack

Registriert seit: 29. Nov 2003
Ort: San Diego, CA/USA
1.446 Beiträge
 
Delphi 2006 Architect
 
#34

Re: Stringgrid inkl. Umlaute richtig sortieren

  Alt 6. Sep 2007, 15:52
Zitat von marabu:
PS: Hast du Schlafstörungen? Bei dir muss es doch zappenduster sein...
Hallo Marabu,

nein hab ich keine, Schlaf is doch sowas von ueberbewertet, findest du nicht auch Vielen Dank fuer die Erklaerungen!
Um etwas Neues zu schaffen muss man seine Ohren vor den Nein-sagern verschliessen um seinen Geist öffnen zu können.
(George Lukas)
  Mit Zitat antworten Zitat
Steven2

Registriert seit: 17. Nov 2006
94 Beiträge
 
Delphi 11 Alexandria
 
#35

Re: Stringgrid inkl. Umlaute richtig sortieren

  Alt 8. Sep 2007, 20:57
Hallo

wie funktioniert das jetzt hiermit?
Delphi-Quellcode:
  SIZE_SUFFIX = 'Ä'; // Wie kann ich auch die anderen Umlaute sortieren (angeben)
  SIZE_COLINDEX = 3;
kann ich das weglassen oder muss ich die anderen umlaute integrieren?
wenn ja...magst du mir noch zeigen wie?

grüße steven
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#36

Re: Stringgrid inkl. Umlaute richtig sortieren

  Alt 8. Sep 2007, 21:19
Hallo Steven,

die beiden Konstanten sind doch nur Relikte aus deinem anfangs geschilderten Problem, der Sortierung von Zeichenketten, die eine Zahl und ordinären Text enthalten. Sie haben nichts mit dem allgemeinen Sortierproblem (Telefonbuchordnung) zu tun.

Gute Nacht
  Mit Zitat antworten Zitat
Steven2

Registriert seit: 17. Nov 2006
94 Beiträge
 
Delphi 11 Alexandria
 
#37

Re: Stringgrid inkl. Umlaute richtig sortieren

  Alt 8. Sep 2007, 21:30
AHA...achso, also brauche ich nur folgendes?
Irgendwie bin ich grad etwas verwirrt:

Delphi-Quellcode:
// Event Handler für OnCustomCompare() im OI erzeugen:
procedure TForm.AdvStringGrid1ClickSort(Sender: TObject; ACol: Integer);

begin
   with Sender as TAdvStringGrid do
     SortByColumn(ACol);
end;

Delphi-Quellcode:
procedure TForm.AdvStringGrid1CustomCompare(Sender: TObject; str1,
  str2: String; var Res: Integer);
begin
  // die Locale solltest du in deinem Programm an zentraler Stelle
  // gleich zu Beginn zwischenspeichern, damit der ständige Aufruf
  // von GetThreadLocale hier unterbleiben kann.
  Res := CompareString(GetThreadLocale or SORT_GERMAN_PHONE_BOOK shl 16,
  NORM_IGNORECASE, PChar(str1), Length(str1), Pchar(str2), Length(str2)) - 2;
end;
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#38

Re: Stringgrid inkl. Umlaute richtig sortieren

  Alt 8. Sep 2007, 21:39
Richtig.

Der Code für das Event OnGetFormat() bezog sich auf Spaltenwerte der Form '150 Kb'.

Weg damit.
  Mit Zitat antworten Zitat
Steven2

Registriert seit: 17. Nov 2006
94 Beiträge
 
Delphi 11 Alexandria
 
#39

Re: Stringgrid inkl. Umlaute richtig sortieren

  Alt 8. Sep 2007, 22:08
Okay
Danke
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 4   « Erste     234   


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 10:34 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