hi. GDI = Graphics Device Interface;
còn API = Application Program Interface;
nên chắc chắn là học GDI rồi.
còn code thì trong msdn thiếu gì. hay trên codeproject đó. trong cviệt cũng có nữa. bạn chụi khó search nhé.
chúc bạn thành công.
cho e hỏi em muốn làm 1 bài tập dạng như sau:
Đầu tiên e vẽ 1 hình tròn. Sau đó e muốn di chuyển hình tròn đó đến vị trí khác mà mình muốn. Vậy em cần học GDI hay là hoc API để làm đc bài tập trên. Nếu ai có code hoặc là tài liệu cho e xin tham khảo với. Thanks
hi. GDI = Graphics Device Interface;
còn API = Application Program Interface;
nên chắc chắn là học GDI rồi.
còn code thì trong msdn thiếu gì. hay trên codeproject đó. trong cviệt cũng có nữa. bạn chụi khó search nhé.
chúc bạn thành công.
bác có thể chỉ cho e biết những hàm nào đc sử dụng để làm cái này ko. Em mới học nên củng ko biết nhiều lắm. Bác chỉ cho e để e nghiên cứu cho lẹ. Thanks
nói về GDI nó là một vấn đề rất rộng. không thể nói hết trong phạm vi một bài viết được.
nếu chỉ để giải quyết bài toán của bạn thì chỉ cần vài dòng code là được thôi.
bạn chỉ cần tìm hiểu về nguyên lý của sự kiện paint trong windows form.(và của các cửa sổ trên Windows nói chung: như dialog, form)
đối tượng Graphics.
và hàm Invalidate thôi.
bạn có thể tham khảo rõ hơn trong MSDN về vấn đề này tại link:
hoặc bạn dùng với từ khóa drawing.Code:ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.en/dv_fxmclignrl/html/162861f9-f050-445e-8abb-b2c43a918b8b.htm
đây là code demo của mình bạn thử xem hiện tượng nhé.
Cshapt Code:
public partial class Form1 : Form { public Form1() { InitializeComponent(); p = new Point(10, 10); } Point p; bool bDrawMouse = false; private void Form1_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; g.DrawEllipse(new Pen(Color.Blue), new Rectangle(p.X,p.Y, 20, 20)); } private void Form1_MouseClick(object sender, MouseEventArgs e) { bDrawMouse = !bDrawMouse; p.X = e.X; p.Y = e.Y; Invalidate(); } private void Form1_MouseMove(object sender, MouseEventArgs e) { if (bDrawMouse) { p.X = e.X; p.Y = e.Y; Invalidate(); } } }
Chúc bạn thành công.
Trong .NET có GDI+, đây là tập hợp những class đóng gói những hàm API cấp thấp vào bản thân nó. Và dĩ nhiên điều đó mang tính chất hướng đối tượng hơn so với việc nhớ và dùng API phức tạp.
Cái gì thư viện .NET có thể làm được thì cậu nên dùng, bí quá mới nghĩ tới việc dùng API.
Bài toán của cậu GDI+ có thể làm dễ dàng đấy.
Các bác có thể cho ít tài liệu về nó không. hoặc là sách nòa hay chỉ em mua củng đc. Thanks các bác.
Cho em hỏi e đã vẽ 1 hình tròn trên 1 pic. Em phải làm cách nòa để khi click vào hình đó trên pic và di chuyển chuột thì sẻ làm thay đổi luôn vị trí của nó trên pic đó. Các bác giúp em với. Thanks.
Cho em hỏi thêm 1 cái nửa là khi em rê chuột lên 1 pixel của pic đó em muốn biết màu của pixel trên. Em cần dùng hàm nào
Cậu này làm trên C#, vậy cậu có biết GDI và API khác nhau cái gì không, C# đã làm cái gì cho cậu đối với API nói chung và GDI nói riêng ?
Em chỉ biết sơ sơ thôi. hehe. Nhưng mà giờ theo em biết thì cái đó chỉ cần dùng GDI là làm đc nên giờ em chỉ muốn hỏi là
Cho em hỏi e đã vẽ 1 hình tròn trên 1 pic. Em phải làm cách nòa để khi click vào hình đó trên pic và di chuyển chuột thì sẻ làm thay đổi luôn vị trí của nó trên pic đó. Các bác giúp em với. Thanks.
Cho em hỏi thêm 1 cái nửa là khi em rê chuột lên 1 pixel của pic đó em muốn biết màu của pixel trên. Em cần dùng hàm nào