Avatar billede freja123 Nybegynder
05. december 2008 - 12:38 Der er 7 kommentarer og
1 løsning

Gemme valgte felter i et to dimensional array

Hejsa,

Har desværre brug for lidt hjælp. Det jeg skal bruge er en winform i C# hvor der f.eks. er 50x50 felter bestående af en pixel(1x1).

Det skal så være muligt at farvelægge/vælge den pixel man trykker på. For så til sidst når man trykker gem, gemmer det i en tekstfil som et to dimensional bytearray, hvor de felter man har farvelagt/valgt står som 1 taller og resten som 0'er.

Mvh
Freja
Avatar billede aaberg Nybegynder
05. december 2008 - 13:59 #1
Skal hvert felt kun være 1x1 pixel? Det blive nogle meget små felter man skal ramme med musen!

Hvor meget hjælp skal du bruge? Leder du efter nogen der kan lave det hele for dig, eller skal du i første omgang have et hint til at komme igang?
Avatar billede freja123 Nybegynder
05. december 2008 - 14:35 #2
Hej aaberg,

Ved ikke hvorfor jeg skrev 1x1 pixel :) kan godt se det bliver for småt, men bare så der er 50x50 felter.


Vil gerne have hints, eksemplerm færdig kode mm. Kan ikke lige gennemskue, hvordan jeg får det tegnet og så gemt i et to dimensional bytearray.
Avatar billede aaberg Nybegynder
05. december 2008 - 14:54 #3
Nu giver jeg dig en overordnet opskrift til, hvordan du kan løse det. Hvis du har brug for et virkende eksempel, kan jeg godt lave det til dig i aften.

Brug en UserControl til det område som der skal tegnes på. Når musen klikker, regner du ud hvilket index du har trykket på. hvis f.eks. UserControllen er 500x500 pixel, og der trykkes på pixel 45x15, så ved du det er felt med index (5,2). Denne information kan du gemme i et 50x50 Color array.

override OnPaint på UserControl'en for at tegne felterne fra Arrayet.

Hvis du ikke kan gennemskue det, så kan jeg godt flække noget sammen til dig i aften.
Avatar billede freja123 Nybegynder
05. december 2008 - 15:03 #4
Ok, mange tak. Prøver lige ellers vender jeg frygtelig tilbage :)
Avatar billede freja123 Nybegynder
05. december 2008 - 17:26 #5
Nå må stoppe for idag. Det vil ikke som jeg vil :) Hvis du har tid og lejlighed må du MEGET gerne vise mig et virkende eksempel. Det vil redde min weekend ;)
Avatar billede aaberg Nybegynder
05. december 2008 - 23:35 #6
Her har du et virkende eksempel. Det er et Visual Studio 2008 Express projekt.
http://rapidshare.com/files/170635343/Felter.zip.html

Jeg har ikke dokumenteret det så godt, men bare spørg hvis der er noget du ikke forstår.

:-)
Avatar billede freja123 Nybegynder
06. december 2008 - 18:52 #7
Det ser godt ud. Lige det jeg havde i tankerne. Vil selv se om jeg ikke kan lave det med dit eks som støtte.

Smid et svar så du kan få dine point. Good job :-)
Avatar billede aaberg Nybegynder
07. december 2008 - 10:27 #8
:-)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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