CÁC GIẢI PHÁP LẬP TRÌNH C# - Trang 292

292
Chương 8: Đồ họa, đa phương tiện, và in ấn

Ví dụ sau đây sẽ tạo một

Rectangle

và một

GraphicsPath

. Theo mặc định, hai shape này có

nền màu xanh nhạt. Tuy nhiên, phương thức thụ lý sự kiện

Form.MouseMove

sẽ kiểm tra xem

con trỏ chuột có nằm trong một trong hai shape này hay không, và cập nhật màu nền thành
hồng tươi nếu con trỏ ở đó.

using System;

using System.Windows.Forms;

using System.Drawing;

using System.Drawing.Drawing2D;

public class HitTesting : System.Windows.Forms.Form {

// (Bỏ qua phần mã designer.)

// Định nghĩa các shape sẽ được sử dụng.

private GraphicsPath path;

private Rectangle rectangle;

// Định nghĩa các cờ để theo vết con trỏ chuột.

private bool inPath = false;

private bool inRectangle = false;

// Định nghĩa các bút vẽ.

Brush highlightBrush = Brushes.HotPink;

Brush defaultBrush = Brushes.LightBlue;

private void HitTesting_Load(object sender, System.EventArgs e) {

// Tạo các shape.

path = new GraphicsPath();

path.AddEllipse(10, 10, 100, 60);

path.AddCurve(new Point[] {new Point(50, 50),

new Point(10,33), new Point(80,43)});

path.AddLine(50, 120, 250, 80);

path.AddLine(120, 40, 110, 50);

path.CloseFigure();

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.