• Thứ Hai, 18/10/2004 16:50 (GMT+7)

    Câu hỏi :
    Lập trình giao diện Winform với VB.Net, làm sao để có được giao diện (button, textbox...) giống như style của XP mà không phụ thuộc vào theme của HĐH (Win98, 2000 hay XP)?

    Trả lời :
    Trước hết bạn phải lưu ý các ứng dụng được viết bằng môi trường .Net hiện chỉ có thể chạy trên máy có cài framework .Net. Hiện tại chỉ có framework .Net chạy trên Win2000 và XP, chúng tôi không tìm được framework .Net chạy cho Win9x và WinMe, hơn nữa Microsoft đã tuyên bố không hỗ trợ Win9x và WinMe nữa. Như vậy, việc viết ứng dụng .Net đồng nghĩa sẽ chấp nhận sử dụng nó trên WinXP (hay Win2000), trong trường hợp này ứng dụng sẽ dùng được các "XP Visual Styles". Trong trường hợp muốn viết ứng dụng chạy trên Win9x hay WinMe nhưng lại muốn chúng hiển thị các phần tử theo "XP Visual Styles", bạn phải tự viết thủ công các hàm hiển thị này dựa vào cơ chế owner-drawn của Windows. Ý tưởng của cơ chế này là mỗi lần cần hiển thị 1 phần tử nào đó của đối tượng "window", HĐH sẽ gửi sự kiện (message) tương ứng về cho ứng dụng để tự ứng dụng hiển thị lấy phần tử đó theo nhu cầu riêng tại từng thời điểm. Bạn nên đọc các bài báo trong CD MSDN kèm theo bộ Visual Studio liên quan đến các sự kiện "owner-drawn" để biết cụ thể và chi tiết về cách thức tạo và hiển thị các phần tử owner-drawn.
     
    Chuyên mục: Lập trình