SỐ 127
HỒ LÔ BIẾN

XÂY DỰNG SPLASH SCREEN CHUYÊN NGHIỆP CHO ỨNG DỤNG
KIM NGÂN (IT4Viet Group)

Đối với một ứng dụng, ngoài những tính năng chính của chương trình được đầu tư phát triển thì màn hình chào mừng xuất hiện trước tiên khi chạy ứng dụng (splash screen) cũng có tầm quan trọng không kém. Bởi không ứng dụng chuyên nghiệp nào mà không có splash screen, từ Windows cho đến Photoshop, mỗi chương trình đều có cách thể hiện của riêng mình.

Tuy nhiên, hiện nay phong cách splash screen chủ yếu tập trung theo hai trường phái:

1. Giao diện vuông vức của một form ứng dụng thông thường: điển hình là các sản phẩm của bộ Microsoft Office, Macromedia Flash, Total Commander...

2. Giao diện phá cách không theo chuẩn, phần đồ họa (hình ảnh) thường vượt ra khỏi form: ví dụ có họ sản phẩm của hãng Adobe.

Trong bài viết này, tôi sẽ hướng dẫn bạn nguyên lý thiết kế một splash screen theo dạng form chuẩn nhưng theo phong cách chuyên nghiệp (dạng còn lại chúng ta sẽ nghiên cứu trong một bài viết sau). Tiến trình của splash screen như sau: khi người dùng chạy ứng dụng, màn hình splash screen sẽ xuất hiện trước. Do sự đơn giản của form splash screen nên tốc độ hiển thị rất nhanh. Tiếp theo, trong lúc splash screen đang hiển thị thì ứng dụng chính cũng tranh thủ nạp vào bộ nhớ rồi xuất hiện, lúc này splash screen vẫn còn và nằm đè lên cửa sổ ứng dụng. Cuối cùng, khi ứng dụng đã ổn định thì splash screen biến mất.

Với quy trình phức tạp như thế, chắc hẳn bạn cũng biết rằng kỹ thuật lập trình cổ điển không thể nào làm được mà phải vận dụng khả năng đa tuyến đoạn (multi-threading) của các ngôn ngữ lập trình mới, ở đây là Visual Basic .NET. Muốn vậy, ta cần phải xây dựng hai tuyến đoạn: một dành cho splash screen và một dành cho ứng dụng chính, cùng với giải pháp dùng module rồi gọi chạy các tuyến đoạn.

Công việc nghe có vẻ phức tạp song phần thực hành thì lại vô cùng đơn giản, bạn cần chuẩn bị trước hai form:

1. Form giao diện chính của ứng dụng: form này thì chắc hẳn bạn đã có sẵn bởi ứng dụng mà không có giao diện thì còn gì là ứng dụng nữa (ví dụ: frmMain).

2. Form dùng làm splash screen: form này bạn chỉ nên thiết kế gọn nhẹ, làm sao cho bắt mắt người dùng và thể hiện hết chức năng ứng dụng là được (ví dụ: frmSplash).

Bạn tiếp tục tạo thêm một module đặt tên là MainModule.vb với nội dung tương tự như sau:

Imports System.Windows.Forms
Imports System.Threading

Module MainModule
Public mainForm As frmMain
Private splashForm As frmSplash
Private appContext As ApplicationContext

Sub Main()
StartApplication()
ShowSplashScreen()
ShowMainForm()
ReleaseSplashScreen()
ReadEvents()
Cleanup()
End Sub

Sub StartApplication()
appContext = New ApplicationContext
End Sub

Sub ShowSplashScreen()
splashForm = New frmSplash
splashForm.Show()
Application.DoEvents()
Thread.Sleep(3000)
End Sub

Sub ShowMainForm()
mainForm = New frmMain
mainForm.Show()
Application.DoEvents()
Thread.Sleep(1000)
End Sub

Sub ReleaseSplashScreen()
splashForm.Close()
End Sub

Sub ReadEvents()
appContext.MainForm = mainForm
Application.Run(appContext)
'Ứng dụng sẽ thoát khi đóng mainForm
End Sub

Sub Cleanup()
'Đặt bộ thu gom rác ở đây
End Sub
End Module

Bây giờ công việc còn lại là trong môi trường phát triển (IDE) Visual Studio .NET bạn nhấp phải chuột vào tên project trong cửa sổ Solution Explorer chọn mục Properties. Tại cửa sổ vừa xuất hiện, bạn chọn tên thủ tục sẽ chạy đầu tiên (Sub Main) trong MainModule.vb, nhấn OK rồi chạy thử ứng dụng, bạn sẽ thấy điều hấp dẫn xảy ra và ứng dụng mang một sức sống mới.

[Đầu trang]
Trang chủ
Nội lực "Peter Pan"
Cầu nối Intel Việt Nam
Chuyện trong tuần
Cõi người ta
Bình luận thị trường
Cõi Mô-bai
Chuyên đề
Bổ ngửa
Túi càn khôn IT
Hồ lô biến
Cảm về Game
Nhật ký e-CHÍP
Bản quyền Công ty Phần mềm & Truyền thông VASC
 99 Triệu Việt Vương HN; Tel: (04) 9782235 • email: echip@vasc.com.vn
Mọi chi tiết về kinh doanh và quảng cáo xin liên hệ Phòng Quảng cáo. Tel: (04) 9782077 kd@vasc.com.vn