Avatar billede r9 Nybegynder
22. juli 2003 - 08:52 Der er 3 kommentarer og
1 løsning

GDI+ FillPolygon()

Jeg har en figur som jeg ønsker at fylde med farve.

Men jeg kan ikke rigtig få metoden FillPolygon til at virke.
(Graphics.FillPolygon())



Figuren ser sådan her ud:

    System.Drawing.Graphics formGraphics = null;
            System.Drawing.Pen myPen;

            formGraphics = pictureBox8.CreateGraphics();
            myPen = new System.Drawing.Pen(System.Drawing.Color.Black,1);
            formGraphics.DrawLine(myPen, 5, 20, 90, 20);
            formGraphics.DrawLine(myPen, 5, 20, 5, 90);
            formGraphics.DrawLine(myPen, 90, 20, 90, 90);

            formGraphics.DrawLine(myPen, 5,90,30,115);
            formGraphics.DrawLine(myPen, 90, 90, 65, 115);
            formGraphics.DrawLine(myPen, 30, 115, 65, 115);
            myPen.Dispose();





Men når jeg fylder farve i den, så virker det ikke:

        SolidBrush GrayBrush = new SolidBrush(Color.Gray);
            Point point1 = new Point(5, 20);
            Point point2 = new Point(90, 20);
            Point point3 = new Point(5, 20);
            Point point4 = new Point(5, 90);
            Point point5 = new Point(90, 20);
            Point point6 = new Point(90, 90);
            Point point7 = new Point(5, 90);
            Point point8 = new Point(90, 90);
           
            Point[] curvePoints = new Point[]
            {
                point1,
                point2,
                point3,
                point4,
                point5,
                point6,
                point7,
                point8
            };

           
            formGraphics.FillPolygon(GrayBrush, curvePoints);
           


Nogen ideer?
Avatar billede mjohansen Nybegynder
22. juli 2003 - 10:14 #1
Virker da fint! MEN hvad er baggrundsfarven i DIN pictureBox??
Avatar billede r9 Nybegynder
22. juli 2003 - 10:27 #2
den er Transparent.




Denne figur:
            formGraphics.DrawLine(myPen, 5, 5, 15, 5);
            formGraphics.DrawLine(myPen, 5, 90, 15, 90);
            formGraphics.DrawLine(myPen, 5, 5, 5, 90);
            formGraphics.DrawLine(myPen, 15, 5, 15, 90);

farves fint med:
    SolidBrush darkGrayBrush = new SolidBrush(Color.Gray);
           
            Point point1 = new Point(5, 5);
            Point point2 = new Point(15, 5);
            Point point3 = new Point(5, 90);
            Point point4 = new Point(15, 90);
            Point point5 = new Point(5, 5);
            Point point6 = new Point(5, 90);
            Point point7 = new Point(15, 5);
            Point point8 = new Point(15, 90);

            Point[] curvePoints = new Point[]
            {
                point1,
                point2,
                point3,
                point4,
                point5,
                point6,
                point7,
                point8
            };
            formGraphics.FillPolygon(darkGrayBrush, curvePoints);




men figuren i mit spørgsmål, farves helt forkert.
Jeg kan dog ikke lige finde fejlen..
Avatar billede odegaard Nybegynder
22. juli 2003 - 22:00 #3
Hvordan "Farves helt forkert" ?
Avatar billede r9 Nybegynder
23. juli 2003 - 23:30 #4
det var fordi at jeg angav rækkenfølgen af punkter forkert.
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