Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 8 của 8
  1. #1

  2. #2

    Tô màu phần giao nhau của 2 hình chữ nhật trong lập trình C#

    - Đầu tiên, bạn tạo ra 1 project dạng "Windows Forms".
    - Kế đến, bạn thụ lý tình huống Paint của Form chính như sau:

    Mã:
            private void Form1_Paint(object sender, PaintEventArgs e)        {            // thiết kế 2 hình chữ nhật             Rectangle rect1 = new Rectangle(50, 50, 50, 50);            Rectangle rect2 = new Rectangle(70,70,170,170);            //vẽ 2 hình chữ nhật lên Form            e.Graphics.DrawRectangle(Pens.Red, rect1);            e.Graphics.DrawRectangle(Pens.Blue, rect2);             if (rect1.IntersectsWith(rect2)) //xác định xem hình chữ nhật 1 có giao với hình chữ nhật 2 hay không?            {                // nếu có giao nhau                 // tìm ra phần giao của 2 HCN trên                rect1.Intersect(rect2);                //sau đó tô màu vùng giao này                e.Graphics.FillRectangle(Brushes.Green, rect1);            }        }
    Tất nhiên, bạn cũng có thể tô màu phần giao với các dạng hình bất kỳ nè.

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Cho hỏi câu nhé: làm sao để thụ lý Form_Paint mình không biết, mình chỉ biết Form_Load thôi, xin lỗi vì hơi kém cõi nhé. Thanks

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    ừ, hay đấy. nhưng bây giờ tui muốn bắt sự kiện Click vào phần giao của hình chữ nhật. Ví dụ: Khi tui Click vào phần giao đó thì xuất hiện một thông báo:
    Mã:
    MessageBox.Show("Đây là phần giao của hai hình chữ nhật");
    thì làm thế nào để bắt được chuột nhỉ?

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    _Giao nhau của 2 HCN là 1 HCN trong đó có 4 điểm được xác định bởi :
    + 2 đỉnh là giao của 2 HCN ban đầu
    + 2 đỉnh còn lại , mỗi cái là một đỉnh của một HCN ban đầu ( cách xác định : lấy đỉnh này thay vào phương trình HCN kia nếu nhỏ hơn thì đó là điểm cần tìm )

    -> cái này ở phổ thông học chán rồi thì phải [IMG]images/smilies/biggrin.png[/IMG]

  6. #6
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi pete_87
    _Giao nhau của 2 HCN là 1 HCN trong đó có 4 điểm được xác định bởi :
    + 2 đỉnh là giao của 2 HCN ban đầu
    + 2 đỉnh còn lại , mỗi cái là một đỉnh của một HCN ban đầu ( cách xác định : lấy đỉnh này thay vào phương trình HCN kia nếu nhỏ hơn thì đó là điểm cần tìm )

    -> cái này ở phổ thông học chán rồi thì phải [IMG]images/smilies/biggrin.png[/IMG]
    ừa, nhưng tui muốn nói về việc bắt chuột kia mà, bây giờ làm thế nào dể bắt được sự kiện chuột Click vào khu vực giao của hai HCN mà chúng ta đã tô màu ấy

  7. #7
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    _Cái này dùng trick một tẹo, vẽ ngay một HCN đè lên cái phần giao nhau đó. Nhưng để invisible hoặc transparent cũng được sau đó xử lý event thôi.

  8. #8
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Sao lại bắt sự kiện form_paint ,Nếu mà bình thường mà mình muốn vẽ phải làm sao .

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •