public void DrawLines(Pen, Point[]); public void DrawLines(Pen, PointF[];
DrawLines әдісінің мүмкіндіктерін көрсету үшін қосымшаны жасаңыз. Код келесідей болады:
Point[] points = new Point[50]; Pen pen = new Pen(Color.Black, 2);
private void Form1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics; g.DrawLines(pen, points);
}
private void Form1_Load(object sender, EventArgs e) {
for (int i = 0; i < 20; i++) {
int xPos;
if (i % 2 == 0) {
xPos = 10; }
else {
xPos = 400; }
points[i] = new Point(xPos, 10 * i); }
}
Бағдарламаның нәтижесі суретте көрсетілген. 10.3. Тіктөртбұрыштарды салу үшін DrawRectangle әдісін қолдануға болады:
DrawRectangle(Pen, int, int, int, int);
Бірінші параметр ретінде қалам класының қаламы беріледі. Қалған параметрлер тіктөртбұрыштың орналасуы мен өлшемдерін анықтайды. Көпбұрыштарды салу үшін келесі әдісті қолдануға болады:
DrawPolygon(Pen, Point[]);
75
Рис. 10.3. Пример использования массива точек
DrawEllipse әдісі тікбұрышты аймаққа жазылған эллипсті салады, оның орналасуы мен өлшемдері оған параметрлер ретінде беріледі. Әдісі көмегімен DrawArcпрограмма мүмкін салу сегмент эллипс. Сегмент эллипс жазылған тік бұрышты аймақтың координаталары, сондай-ақ сағат тіліне қарсы бағытта есептелген екі бұрыш көмегімен беріледі. Бірінші бұрыш Angle1, сегменттің бір ұшының орналасуы, ал екінші Бұрыш2 – сегменттің екінші ұшының орналасуы (сурет. 10.4).
1
Рис. 10.4. Углы и прямоугольник, задающие сегмент эллипса
76
Graphics класында боялған фигураларды салуға арналған бірқатар әдістер анықталған. Fill префиксі бар осы әдістердің кейбірінің атаулары*: * FillRectangle сұрағы (боялған тіктөртбұрышты салу), * Fillrectangles (көптеген боялған көп бұрыштарды салу), * Fillpolygon (боялған көпбұрышты салу), * fillellipse (боялған эллипсті салу), * Fillpie (эллипстің боялған сегментін салу), * fillclosedcurve (боялған сплайнды салу), * Fillregion (Region типті боялған аймақты салу). Fill * префиксі бар әдістердің Draw*префиксі бар бірдей атаулардан екі айырмашылығы бар. Біріншіден, fill * префиксі бар әдістер боялған фигураларды, ал draw* префиксі бар әдістер боялмаған. Сонымен қатар, бірінші параметр ретінде fill* префиксі бар әдістерге қалам класының қаламы емес, SolidBrush класының щеткасы беріледі. Төменде боялған тіктөртбұрышты көрсететін мысал келтірілген:
1
SolidBrush B = new SolidBrush(Color.DeepPink); g.FillRectangle(B, 0, 0, 100, 100);
Достарыңызбен бөлісу: |