Avatar billede r.hegaard Nybegynder
22. april 2003 - 17:34 Der er 11 kommentarer og
1 løsning

Sorter tabel

Hvis jeg gerne vil lave noget der minder om excel i Delphi, hvor man også har mulighed for at sortere de forskellige kolonner i prioriteret rækkefølge, hvad skal jeg så gøre ??
Avatar billede borrisholt Novice
23. april 2003 - 08:12 #1
find et grid der kan på torry.net
Avatar billede jensfudge Nybegynder
23. april 2003 - 10:57 #2
Det kommer jo an på.....
Hvis dine data ligger en TObjectList kan du jo kalde dens .sort metode med en parameter. Parameteren skal da være en rutine til at sortere listen, rutinen er en funktion der returnerer negativ hvis det ene element er mindst, positiv hvis det andet er mindst, og 0 hvis de er lige store.
Hvis dine data ligger i et eller andet dataset, kan du oprette indexer på runtime.

/Jens
Avatar billede r.hegaard Nybegynder
23. april 2003 - 17:00 #3
jensfudge> Jeg er ikke helt med på hvad du mener......jeg har ikke arbejdet ret meget med tabeller og lister, så jeg er sådan set nybegynder inden for det område.....
Avatar billede jensfudge Nybegynder
23. april 2003 - 21:17 #4
OK, så må vi tage det stille og roligt....
Hvordan har du dine data nu? Du må næsten have dem gemt i hukommelsen på en eller anden måde. ?????

/Jens
Avatar billede r.hegaard Nybegynder
23. april 2003 - 21:32 #5
Jeg er ikke rigtigt startet på mit program endnu, da jeg gerne lige vil have styr på det her med at sortere m.m.
Men vi kunne jo sige at min tabel/array indeholder følgende data:
0        l
1        g
2        e
3        t
4        å
5        q
6        g
7        n
8        m
9        w

Findes der at komponent i delphi, hvor man kan taste ind i nogle celler ligesom i excel ??
Avatar billede jensfudge Nybegynder
23. april 2003 - 22:13 #6
Så ville jeg forsøge at læse lidt på TClientDataset, og benytte denne til at indeholde dataene, og vise indholdet i en TdbGrid.
Avatar billede jensfudge Nybegynder
23. april 2003 - 22:13 #7
Nå ja, og sortere dataene i denne
Avatar billede r.hegaard Nybegynder
23. april 2003 - 22:26 #8
OK, det vil jeg prøve og kigge lidt på og så vende tilbage når jeg får problemer...
Avatar billede r.hegaard Nybegynder
14. maj 2003 - 18:34 #9
Hvor finder jeg TClientDataset og TdbGrid, og hvordan bruger jeg dem ??
Avatar billede jensfudge Nybegynder
14. maj 2003 - 19:28 #10
De er i fanerne på Delphi... Du skal vistnok have mindst version 5 prof.
Hvilken har du?
Avatar billede r.hegaard Nybegynder
14. maj 2003 - 19:49 #11
Jeg har Delphi 6 Personal...
Avatar billede jensfudge Nybegynder
15. maj 2003 - 10:29 #12
Tja, så er Clientdatasets udelukket.
Du har nu så vidt jeg kan se to valgmuligheder:
1) Opgradere din Delphi til en proffesionel version (mail mig direkte for et tilbud: jens.fudge@archersoft.dk)
2) Selv skrive en hulens masse kode: Principperne må være:

Benyt en TStringGrid som udgangspunkt, eller find et andet grid på internettet du kan benytte i stedet, idet TStringGrid har nogle begrænsninger.
Griddet er kun til visning af data.

Bagved scenerne har du et object der symboliserer det du skal have vist, for eksempel har du hunde med navne:

Class TDog = class(Tobject)
private
FName : string;
procedure setName(value:string);
public
property name : read FName; write setName : string;
end;

Du skal også have dine objekter lagt ind i en liste, her kunne du benytte TObjectList, som er med i Delphi.

TObjectList har en generisk metode Sort, som tager en sorteringsprocedure med som parameter. Selve sorteringen skal du selv styre og implementere.

På Griddets onTitleClick (ved ikke om den findes på TStringGrid, ellers må du finde et grid der har denne event), kalder du din Sort med den procedure der sorterer efter præcis den kolonne som brugeren trykkede på.

Hvis du hverken kender til OOP, TObjectList, TStringGrid eller andre af de nævnte ting, vil jeg kraftigt anbefale dig at finde en god bog, og/eller deltage i et kursus.
En bog jeg kan anbefale er Marco Cantu's Mastering Delphi. Det er et stort svin på omkring 1000 sider, og den er meget god.
Jeg kan også tilbyde privat undervisning, jeg har erfaring med at undervise i Object Orienteret Programmering.

/Jens
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB