02/10/2018, 00:02

Tạo control ImageSlider để làm chương trình SlideShow đơn giản

Chủ đề bài viết hôm nay là làm chương trình SlideShow hình ảnh nhưng để làm điều đó thì mình sẽ hướng dẫn các bạn làm một custom control là ImageSlider. Control này có lẽ trong những bộ công cụ của DevExpress đã có nhưng trong VisualStudio thì chưa. Qua ...

Chủ đề bài viết hôm nay là làm chương trình SlideShow hình ảnh nhưng để làm điều đó thì mình sẽ hướng dẫn các bạn làm một custom control là ImageSlider. Control này có lẽ trong những bộ công cụ của DevExpress đã có nhưng trong VisualStudio thì chưa. 

Qua bài viết này đối với những bạn nào mới bắt đầu lập trình thì có khái niệm là custom control để có thể kế thừa sử dụng lại khi cần thiết. Xem demo để biết thêm bạn nhé:

Bài này khá dài nên mình chỉ post 1 đoạn nhỏ về các sử dụng của control ImageSlider còn custom control này như thế nào các bạn có thể download về xem chi tiết

        private void Form1_Load(object sender, EventArgs e)
        {
            imageSlider1.CaptionOpacity = 200;

            imageSlider1.AddImage("1.jpg", "Laptrinhvb.net", Color.Maroon);
            imageSlider1.AddImage("2.jpg", "Diễn giải 1", Color.BlueViolet);
            imageSlider1.AddImage("3.jpg", "Nội dung cần hiển thị", Color.LimeGreen);
            imageSlider1.AddImage("4.jpg", "Con gì đây?", Color.Orange);
            imageSlider1.AddImage("5.jpg", "Hình này nói về cái gì?", Color.Gray);
            imageSlider1.AddImage("6.jpg", "Hết biết ghi gì ^^");
            imageSlider1.AddImage("7.jpg", "...", Color.Navy);
        }

Custom control mới để hiển thị hình ảnh và diễn giải

class ImageSlider : Panel
{
    Timer _timer;
    int _captionTextLeft = 20;
    int _captionPosX = 20;
    int _pageIndex = 0;

    protected List _imageList = new List();
    protected List _captionList = new List();
    protected List _captionBgColor = new List();

    xButton leftButton;
    xButton rightButton;

    public ImageSlider()
    {
        this.Animation = true;
        this.CaptionAnimationSpeed = 50;
        this.CaptionTextLeft = 20;
        this.CaptionHeight = 50;
        this.CaptionBackgrounColor = Color.Black;
        this.CaptionOpacity = 100;

        leftButton = new xButton();
		leftButton.Text = "ï";
        leftButton.Click += new EventHandler(leftButton_Click);

        rightButton = new xButton();
		rightButton.Text = "ð";
        rightButton.Click += new EventHandler(rightButton_Click);

        this.Resize += ImageSlider_Resize;

        this.Controls.Add(leftButton);
        this.Controls.Add(rightButton);
    }
.......................................
}

Chúc các bạn vui với bài viết này!

Link DownLoad

Tags: imagehình ảnhslideshow
0