Thứ Tư, 8 tháng 4, 2009

12 hiệu ứng chuyển ảnh

Hiệu ứng chuyển ảnh - Điều khiển vbk Transition

Ta có thể gặp hiệu ứng chuyển ảnh trong rất nhiều ứng dụng, chẳng hạn như trong một số screen saver thay đổi hình ảnh, duyệt ảnh ở chế độ slideshow trong các chương trình quản lý ảnh, các hiệu ứng “Slide Transition” của PowerPoint… Khi viết những ứng dụng làm việc với hình ảnh bằng Visual Basic 6, sử dụng hiệu ứng chuyển ảnh sẽ đem lại tính nghệ thuật, đặc sắc cho ứng dụng. Ta hoàn toàn có thể tự thiết kế các hiệu ứng chuyển ảnh (sử dụng phương thức PaintPicture của PictureBox hoặc các hàm API BitlBlt, StretchBlt). Ở đây, tôi giới thiệu một cách làm đơn giản hơn với các hiệu ứng rất đẹp mắt, độc đáo, đó là sử dụng điều khiển vbk Transition của VBKeys gồm 12 hiệu ứng chuyển ảnh.

Hiệu ứng Random Lines

http://www.vbkeys.com/contImg/Tr01.jpg

Hiệu ứng Random Cross Lines

http://www.vbkeys.com/contImg/Tr02.jpg

Hiệu ứng Random Points

http://www.vbkeys.com/contImg/Tr03.jpg

Hiệu ứng Horizontal and Vertical Lines

http://www.vbkeys.com/contImg/Tr04.jpg

Hiệu ứng Window Open

http://www.vbkeys.com/contImg/Tr05.jpg

Hiệu ứng Horizontal and Vertical Window Open

http://www.vbkeys.com/contImg/Tr06.jpg

Bạn tải về tập tin c18.zip từ địa chỉ http://www.vbkeys.com/download/c18.zip (87 KB). Tập tin nén này chứa điều khiển vbk Transition (tập tin vbkTransition.ctl) và chương trình minh họa.

Sử dụng vbk Transition

Bạn thực hiện theo ví dụ sau để biết cách sử dụng vbk Transition.

- Bạn tạo dự án mới dạng Standard EXE. Bạn sao chép 2 tập tin vbkTransition.ctl và modMain.bas từ tập tin c18.zip để thêm vào dự án:

+ Thêm điều khiển vbk Transition: vào menu Project\ Add User Control > chọn thẻ Existing trong cửa sổ Add User Control > tìm đến tập tin vbkTransition.ctl > nhấn Open > nhấn đúp chuột vào biểu tượng vbk Transition trên Toolbox để thêm điều khiển vào biểu mẫu.

+ Thêm tập tin modMain.bas: vào menu Project\ Add Module > chọn thẻ Existing trong cửa sổ Add Module > tìm đến tập tin modMain.bas > nhấn Open.

- Bạn thêm vào biểu mẫu 2 PictureBox, đặt tên là picA, picB và nạp ảnh cho chúng. PicA chứa ảnh ban đầu, picB chứa ảnh sẽ chuyển qua. Hai PictureBox này phải có kích thước bằng nhau. Nếu muốn nạp ảnh vào PictureBox khi chạy chương trình, bạn sử dụng hàm LoadPicture, ví dụ: picA.Picture = LoadPicture(App.Path & "\images\picA.jpg").

(Name)

picA

AutoRedraw

False

Picture

(Ảnh ban đầu)

Visible

True

Bảng thuộc tính của PictureBox picA

(Name)

picB

AutoRedraw

True

Picture

(Ảnh sẽ chuyển qua)

Visible

False

Bảng thuộc tính của PictureBox picB

- Thủ tục ThucHienChuyenAnh dùng hiệu ứng chuyển ảnh để thay thế ảnh trong picA bằng ảnh trong picB:

Private Sub ThucHienChuyenAnh()

Set vbkTransition1.objPic(A) = picA ‘Ảnh ban đầu

Set vbkTransition1.objPic(B) = picB ‘Ảnh sẽ chuyển qua

vbkTransition1.TranType = 2 ‘Chọn kiểu chuyển ảnh, có 12 kiểu, đánh số từ 0 đến 11

vbkTransition1.Start ‘Bắt đầu thực hiện chuyển ảnh

picA.Picture = picB.Picture ‘Thay thế ảnh trong picA bằng ảnh trong picB vì tuy picA hiển thị hình ảnh trong picB nhưng picA chưa cập nhật hình ảnh này nên hình ảnh vừa thay thế sẽ mất đi khi bị cửa sổ khác che lên hay khi thu nhỏ cửa sổ biểu mẫu.

End Sub


- Khi cần thực hiện chuyển ảnh, bạn chỉ việc gọi thủ tục ThucHienChuyenAnh. Chẳng hạn như trong đoạn mã sau, việc chuyển ảnh sẽ được thực hiện khi xảy ra sự kiện nhấn CommandButton Command1:

Private Sub Command1_Click()

ThucHienChuyenAnh

End Sub

Bạn thấy đấy, chỉ cần thực hiện vài thao tác là đã có thể áp dụng bộ hiệu ứng chuyển ảnh của điều khiển vbk Transition. Bạn có thể tham khảo chương trình minh họa trong tập tin c18.zip để biết thêm về cách sử dụng điều khiển. Việc tìm hiểu mã nguồn của điều khiển cũng rất ích lợi vì khi đã nắm được nguyên tắc, bạn có thể dễ dàng tạo ra các hiệu ứng chuyển ảnh khác. Chúc bạn thành công.

Ngô Bảo Khoa
Thế giới @ 110

Không có nhận xét nào:

Đăng nhận xét