LineShape fjernes ikke ved opdatering af PictureBox

Tags:    .net

Jeg er i gang med at lære Visual Basic .NET 2008, og i den forbindelse har jeg konverteret et Visual Basic 6 projekt til 2008. I det har jeg en PictureBox, og nogle LineShapes. Når jeg flytter musen henover min PictureBox, skal de LineShapes så flyttes til nogle koordinater beregnet ud fra musens koordinater.

I Visual Basic 6 virker det fint, linjerne flytter sig som de skal. Men i 2008 flytter linjerne sig ikke, de bliver i stedet for kopieret til de nye koordinater, således at der nærmest bliver oprettet nye linjer hver gang jeg flytter musen, eller at PictureBoxen ikke opdaterer billedet, når jeg flytter musen.

Eftersom jeg er ny mht. 2008, ved jeg ikke hvordan jeg kan rette fejlen. Nogle forslag?



4 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato


Hej Michael,

Jeg tror ikek der er mange der vil komme med et bud uden at have set din kode.

Med venlig hilsen
Ieet





Sandt nok.

Fold kodeboks ind/udKode 


Jeg har på min Form et Panel kaldet AreaContainer, en PictureBox kaldet Area som er Docket indeni AreaContaineren, samt 4 LineShapes (fra Visual Basic Power Packs 3.0) kaldet LineTop, LineLeft, LineRight og LineBottom.

Ovenstående er for øvrigt noget jeg lige satte sammen fra min reelle kode. Af en eller anden grund er denne kode meget ren, mens min reelle kode er blevet automatisk fyldt med alle mulige oplysninger om de ting jeg har puttet på min Form. Jeg kan forstå at koden skal bruge den, men ikke hvorfor det så ikke er blevet tilføjet ovenstående kode.



Indlæg senest redigeret d. 07.05.2008 12:28 af Bruger #12726
Jeg fandt ud af at jeg skulle bruge Refresh på min PictureBox og Panel for at undgå at linjerne blev tegnet overalt.

Men nu har jeg så det problem, at linjerne kun dukker op, når jeg flytter min mus til en ny 16x16 del af min PictureBox. Hvis jeg flytter musen indenfor den del, cursoren allerede er i, bliver der ikke tegnet noget.

Fold kodeboks ind/udKode 




Indlæg senest redigeret d. 08.05.2008 11:09 af Bruger #12726
Jeg havde fuldstændig glemt at der både i VB6 og VB.NET's Powerpacks er en RectangleShape.

Ikke nok med at min kode blev meget mindre, det fungerede også derefter. Jeg skulle bare lige tilføje en Refresh for min PictureBox.



t