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 3 của 3
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Tạo form có hình dạng tùy biến trong lập trình C#

    Tạo form có hình dạng tùy biến
    Bạn cần tạo một form hoặc điều kiểm không phải hình chữ nhật.
    Tạo một đối tượng System.Drawing.Region có hình dạng như bạn muốn, và gán nó vào thuộc tính Form.Region hoặc Control.Region.
    Để tạo một form hoặc điều kiểm không phải hình chữ nhật, trước hết bạn cần định nghĩa hình dạng mình muốn. Cách tiếp cận dễ nhất là sử dụng đối tượng System.Drawing.Drawing2D.GraphicsPath, nó có thể điều tiết bất kỳ sự kết hợp nào của các hình ellipse, chữ nhật, và cung khép kín. Bạn có thể thêm các shape vào một đối tượng GraphicsPath bằng các phương thức như AddEllipse, AddRectangle, và AddClosedCurve. Một khi đã hoàn tất việc định nghĩa hình dạng như mong muốn, bạn có thể tạo một đối tượng Region từ GraphicsPath này—chỉ cần trình ra GraphicsPath trong phương thức khởi dựng của lớp Region. Cuối cùng, bạn có thể gán Region vào thuộc tính Form.Region hoặc Control.Region.
    Ví dụ dưới đây trình bày cách tạo một form có hình dáng bất thường bằng hai cung tròn (hai cung này được chuyển thành một figure khép kín bằng phương thức GraphicsPath.CloseAllFigures).


    Mã:
    using System;using System.Windows.Forms;using System.Drawing;using System.Drawing.Drawing2D; public class IrregularForm : System.Windows.Forms.Form {     private System.Windows.Forms.Button cmdClose;    private System.Windows.Forms.Label label1;     // (Bỏ qua phần mã designer.)     private void IrregularForm_Load(object sender, System.EventArgs e) {            GraphicsPath path = new GraphicsPath();        Point[] pointsA = new Point[] {new Point(0, 0),          new Point(40, 60), new Point(this.Width - 100, 10)};        path.AddCurve(pointsA);         Point[] pointsB = new Point[]          {new Point(this.Width - 40, this.Height - 60),           new Point(this.Width, this.Height),           new Point(10, this.Height)};        path.AddCurve(pointsB);         path.CloseAllFigures();        this.Region = new Region(path);    }     private void cmdClose_Click(object sender, System.EventArgs e) {            this.Close();    }}
    Trích từ "Các giải pháp lập trình C#"

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    thật hay đó.
    cũng lên làm thử lên nâng cao tay nghề.
    thanks.

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Hay quá. Một phong cách rất hay.

 

 

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
  •