Từ 1 tới 9 trên tổng số 9 kết quả

Đề tài: hỏi về cách dùng graphics

  1. #1
    Ngày gia nhập
    03 2009
    Bài viết
    18

    Mặc định hỏi về cách dùng graphics

    các bạn giúp mình vấn đề này được không? mình có 1 form , trên đó có picturebox, mình vẽ 1 đường line trên đó nhưng khi mình ẩn form xuống thanh tapbar hay lấy 1 cửa sổ khác đè lên form thì bị mất đường line đã vẽ. vậy mình đã bị lỗi gì, có thể chỉ mình giải quyết được không? nếu co code thì càng tốt, tại mình mới tìm hiểu C# mấy ngày nay thôi. mình xin cảm ơn nhiều.

  2. #2
    Ngày gia nhập
    04 2008
    Bài viết
    336

    viết sự kiện Paint cho pictureBox ... nên vẽ vào 1 buffer rồi cho sự kiện Paint vẽ cái buffer này ra. Nếu có thay đổi gì thì Invalidate hoặc Refresh pictureBox để nó thực hiện Paint
    code ra gió bão

  3. #3
    Ngày gia nhập
    03 2009
    Bài viết
    18

    mình hok hiểu rõ lắm, bạn có thể bỏ chút thời gian ra code demo cho mình được hok. mình cảm ơn nhiều. mình mới tìm hiểu C# ah.

  4. #4
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Mình đoán là hình như bạn lấy đối tượng graphics của Picturebox và vẽ lên phải ko ? Hình vẽ này sẽ mất khi cửa sổ cần vẽ lại. Bạn giải quyết thế này :
    - Vào nút tia sét ( sự kiện ), để add sự kiện OnPaint
    - Lấy graphics ra từ PaintEventArgument và vẽ bằng đối tượng graphics đó.

    Cao hơn bạn có thể override lại hàm paint của cửa sổ và dùng buffer để vẽ cho ko bị giật.
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  5. #5
    Ngày gia nhập
    03 2009
    Bài viết
    18

    Mình giải quyết được rồi,cảm ơn các bạn nhiều

  6. #6
    Ngày gia nhập
    10 2006
    Nơi ở
    In Your Bugs
    Bài viết
    823

    Mặc định hỏi về cách dùng graphics

    1. Cho hỏi "Tại sao override lại OnPaint với kĩ thuật thích hợp thì lại giúp chống nhấp nháy ?"
    2. Nếu ko dùng OnPaint() tức bạn ko sử dụng PaintEventArgs thì bạn có thể tạo được đối tượng Graphics ko ? Tạo như thế nào ?
    3. Trong C++ bạn có thể reDraw chỉ 1 phần cửa sổ ( InvalidateRect ) vậy trong C# nếu thưc sự cần thiết bạn sẽ làm thế nào ?

  7. #7
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Nhấp nháy là do hành động xóa nền rồi sau đó lại vẽ lại tạo ra cảm giác nhấp nháy. Khi ta vẽ vào buffer, ta cũng xóa nền rồi vẽ, nhưng lúc đó màn hình vẫn chưa vẽ lại. Màn hình chỉ vẽ lại khi ta đã vẽ hết trong buffer và từ buffer vẽ ra lại màn hình.
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  8. #8
    Ngày gia nhập
    11 2008
    Bài viết
    8

    Trích dẫn Nguyên bản được gửi bởi kidkid Xem bài viết
    2. Nếu ko dùng OnPaint() tức bạn ko sử dụng PaintEventArgs thì bạn có thể tạo được đối tượng Graphics ko ? Tạo như thế nào ?
    Tạo được bằng Control.CreateGraphics().
    BTC

  9. #9
    Ngày gia nhập
    10 2008
    Bài viết
    10

    Cho mình hỏi...mình dùng C#
    Mình vẽ trên Panel, khi xuất hiện 1 label khác đè lên hình vẽ thì sau khi label đó mất đi hình vẽ cũng bị xoá phần bị đè lên.
    Theo mình biết thì cách giải quyết cũng như trên nhưng các bạn có thể demo code giúp mình được ko? Nếu được thì giúp cả 2 cách, dùng event Paint của Panel và buffer luôn (cái này mình có biết qua nhưng ko nắm rõ lắm)
    =_________=!

Các đề tài tương tự

  1. Graphic xóa 1 chuỗi khi dùng Graphics.DrawString(...) vẽ ra trong Bitmap
    Gửi bởi search_ trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 29-10-2011, 10:11 AM
  2. Lỗi khi dùng chung graphics.h với clrscr();
    Gửi bởi xm8sight trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 11-05-2011, 11:09 AM
  3. Vẽ lá cờ Việt Nam trong C dùng Graphics?
    Gửi bởi njkbh trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 4
    Bài viết cuối: 05-04-2011, 08:56 PM
  4. vấn đề Graphics
    Gửi bởi pine8xproit trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 1
    Bài viết cuối: 22-06-2009, 03:18 PM
  5. Code bài bắn pháo hoa (Mà không dùng Graphics)
    Gửi bởi iamvtn trong diễn đàn Thủ thuật, Tutorials và Mã nguồn C/C++/C++0x
    Trả lời: 0
    Bài viết cuối: 21-06-2007, 01:06 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn