Avatar billede whynot Nybegynder
23. maj 2004 - 18:27 Der er 10 kommentarer og
1 løsning

Genbrug af samme procedure men til forskellige stringgrids

jeg har et problem med nogle stringgrids i mit program.

Jeg er træt af at skulle lave en procedure pr. stringgrid for at fylde dem.. det må være muligt at lave én generel procedure som fylder et givent stringgrid med data fra et 2d-array (array of array of string) i mit program.

jeg forstiller mig noget med at man skriver form1.stringgrid1.fyldgrid(v_array);
hvorefter at proceduren fyldgrid tager v_array og fylder det ind i cellerne på stringgrid1 på form1.

Men hvordan gør man det?
Avatar billede nico26 Nybegynder
23. maj 2004 - 18:41 #1
Du kan enten lave en ny komponent eller en funktion der tager et stringgrid. Det sidste er det nemmeste

procedure FyldGrid(grid: TStringGrid; data: array of array of string);
begin

end;
Avatar billede whynot Nybegynder
23. maj 2004 - 19:32 #2
fino.. det ser ud til at virker hvis alle mine stringgrids ligger på samme form.. Men jeg har mindst 15 forskellige forme alle med forskellige stringgrids.. så hvordan tilgår jeg f.eks. stringgrid2 på form2?

Skal proceduren se nogenlunde sådan ud?...fordi det synes jeg nemlig ikke virker.

procedure FyldGrid(v_form: Tform; grid: TStringGrid; data: array of array of string);
begin

end;
Avatar billede whynot Nybegynder
23. maj 2004 - 19:36 #3
ahhhh... man skriver blot:

fyldgrid(form2.stringgrid2, v_array);

he he.. ganske smart - thx.!

...giv mig et svar og der er points til dig :)
Avatar billede stefmeister Nybegynder
24. maj 2004 - 15:52 #4
Det er selvfølgelig den gode løsning du har fået. Men for at være primitiv så kunne du også bare have henvist dem til den du allerede havde lavet.
det samme med f.eks. knapper. Så lige meget hvilken knap du trykker på så bruger den funktionen fra f.eks. knap et. Det gøres i venstre side det hvor du vælger hvilken action den skal bruge.
Avatar billede whynot Nybegynder
24. maj 2004 - 22:28 #5
øhm.. ja det har du ret i stefmeister.. jeg har nu mest lyst til at anvende nico22's løsning.. den er mest generel.. desuden er jeg allerede ved at implementere denne form for kode overalt i systemet ;)

..mens ellers tak for forslaget - det er altid lækkert at få vendt og drejet tingene lidt.!
Avatar billede stefmeister Nybegynder
01. juni 2004 - 16:55 #6
skal du ikke lukke spørgsmålet?
Avatar billede whynot Nybegynder
01. juni 2004 - 20:26 #7
Øhm.. har jeg ikke gjort det ved at give dig point?
Avatar billede stefmeister Nybegynder
01. juni 2004 - 22:39 #8
der er ingen svar/accepterede svar
Avatar billede whynot Nybegynder
02. juni 2004 - 09:05 #9
åhhh nu kan jeg se det.. jamen jeg venter jo stadig på et svar fra Nico22.. før det sker.. jamen før kan jeg ikke give ham points og dermed bliver spørgsmålet ikke lukket.
Avatar billede stefmeister Nybegynder
02. juni 2004 - 14:18 #10
nico26 --> giv et svar, så whynot kan få lukket.
Avatar billede whynot Nybegynder
07. oktober 2012 - 00:25 #11
svar
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