Problem Med System.Drawing

Tags:    .net

Hej, jeg er en nybegynder til C# og har kun arbejdet med det i en kort periode. Fornyligt har jeg sammen med en klassekammerat været i gang med at lave et simpelt tegneprogram ved at bruge System.Drawing classen. Vi har så langt fået implementeret farvevalg og penseltykkelse(man kan dog kun tegne lige streger indtil videre) og har gjort så at man kan tegne på et panel. Her kommer problemet så: ligeså snart man minimerer eller kører et andet vindue henover programmet så forsvinder det man har tegnet. Jeg er godt klar over at jeg mangler at gøre det til et bitmap men jeg kan ikke finde ud af hvordan det skal gøres. Vi har begge søgt forgæves på internettet efter en måde at gøre det på og har fundet nogle eksempler hvor man benytter sig af paint eventen. Men problemet med det er så at lave at grafikken bliver brugerstyret da vores nuværende program afhænger af mousemove og mousedown. Jeg har hørt at man kan kopiere det man tegner til Bitmap hukkomelse men jeg er ikke klar over om dette er den bedste løsning eller hvordan man kan gøre dette.

Er der nogen der ved eller har nogen ide om hvordan jeg kan løse mit problem?

Jeg har ikke skrevet koden her da den fylder rigtigt meget, men kan da gøre det hvis det er nødvendigt for at løse problemet.

Mvh. Emil





Er det ikke bare at lytte på din resize event, og de andre events der sker hvor den ikke gentegner, og når de events sker, så hook dem op på den event der kander invalidate på den kontrol i tegner på... vupti, så skulle det virke



Hmm.. Jeg er bange for at jeg ikke helt forstår hvad du mener. Hvilken resize event er det du snakker om? Problemet ved at bruge invalidate er at ligeså snart den bliver kaldt så forsvinder det der er blevet tegnet. Altså grafikken forsvinder ligeså snart at panelet som den bliver tegnet på eller formen bliver genopfrisket, altså der sker en handling lignende this.Refresh();.

Kunne det lade sig gøre at se en kode stump som ville gøre det muligt at lave vedvarende brugerstyret grafik på et panel? Det ville hjælpe enormt meget hvis jeg kunne se hvordan det skulle opbygges kodemæssigt. Det ville gøre det meget nemmere at forstå. :)

Mvh. Emil



t