Declare Function SetPolyFillMode Lib "gdi32" (ByVal hdc As Long, ByVal nPolyFillMode As Long) As Long
В случае ошибки возвращается 0 (Windows NT и выше: используйте GetLastError для получения кода ошибки). В успешном случае возвращается предыдущий режим заполнения
ALTERNATE = 1 | Альтернативный режим (закрашенные области между нечетными и четно пронумерованными сторонами многоугольника на каждой строке развертки) |
WINDING = 2 | Заполняется любая секция внутри многоугольника |
' Рисуем звезду и закрашиваем его лучи, ' оставляя нетронутой ее внутреннюю часть Dim points(0 to 4) As POINTAPI ' массив вершин звезды Dim lret As Long ' возвращаемое значение ' Определяем координаты вершин звезды points(0).x = 200: points(0).y = 400 points(1).x = 300: points(1).y = 200 points(2).x = 400: points(2).y = 400 points(3).x = 150: points(3).y = 300 points(4).x = 450: points(4).y = 300 ' Рисуем звезду Form1.FillStyle = vbDiagonalCross lret = SetPolyFillMode(Form1.hDC, ALTERNATE) lret = Polygon(Form1.hDC, points(0), 5)