Cách Tạo Cửa Sổ Windows

Mục lục:

Cách Tạo Cửa Sổ Windows
Cách Tạo Cửa Sổ Windows

Video: Cách Tạo Cửa Sổ Windows

Video: Cách Tạo Cửa Sổ Windows
Video: Revit KT Family Window - Tạo cửa sổ 4 cánh nhôm kính có tham biến 2024, Có thể
Anonim

Các nguyên tắc hoạt động của giao diện người dùng của các hệ điều hành thuộc họ Windows dựa trên khái niệm về một cửa sổ. Màn hình nền, thanh tác vụ, danh sách, hộp thoại, nút, menu đều là cửa sổ. Do đó, trên thực tế, để hiển thị bất kỳ thành phần giao diện nào, bạn cần tạo một cửa sổ windows.

Cách tạo cửa sổ Windows
Cách tạo cửa sổ Windows

Cần thiết

  • - trình biên dịch;
  • - Windows Platform SDK.

Hướng dẫn

Bước 1

Đăng ký lớp của cửa sổ sẽ được tạo, nếu cần. Thực hiện cuộc gọi đến các hàm API RegisterClass, RegisterClassEx hoặc sử dụng chức năng thích hợp của khuôn khổ được sử dụng.

Các hàm RegisterClass và RegisterClassEx chấp nhận con trỏ tới các cấu trúc kiểu WNDCLASS và WNDCLASSEX tương ứng, làm tham số duy nhất của chúng. Giá trị trả về của kiểu ATOM có thể được sử dụng thay cho tên lớp khi tạo một cửa sổ. Nếu lệnh gọi hàm không thành công, giá trị trả về là 0.

Khởi tạo cấu trúc kiểu WNDCLASS hoặc WNDCLASSEX. Điền vào tất cả các trường cần thiết. Đặc biệt, các giá trị chính xác phải được đặt trong:

- cbSize - kích thước cấu trúc tính bằng byte;

- style - một tập hợp các kiểu cho lớp cửa sổ;

- lpfnWndProc - con trỏ đến một thủ tục cửa sổ;

- hInstance là phần xử lý của mô-đun mà lớp cửa sổ được đăng ký;

- lpszClassName là tên tượng trưng của lớp.

Phần còn lại của các trường có thể được viết với giá trị NULL. Thực hiện một cuộc gọi hàm để đăng ký lớp cửa sổ. Kiểm tra kết quả trả về.

Bước 2

Chọn một lớp cửa sổ hiện có nếu cần. Bạn phải biết tên lớp tượng trưng (tên được chuyển qua con trỏ lpszClassName khi đăng ký nó) hoặc giá trị ATOM tương ứng. Lớp có thể là cục bộ ở cấp ứng dụng, toàn cục ở cấp ứng dụng (được đăng ký với cờ CS_GLOBALCLASS) hoặc lớp hệ thống. Loại cuối cùng bao gồm các lớp cửa sổ có tên: Button, ComboBox, Edit, ListBox, MDIClient, ScrollBar, Static. Các lớp như RichEdit20W hoặc SysListView32 được đăng ký khi các thư viện tương ứng được tải.

Bước 3

Tạo cửa sổ Windows. Sử dụng các hàm API CreateWindow, CreateWindowEx hoặc các phương thức trình bao bọc thích hợp cho các đối tượng lớp của khung hoặc thư viện mà bạn đang sử dụng. Nguyên mẫu cho hàm CreateWindowEx trông giống như sau:

HWND CreateWindowEx (DWORD dwExStyle, LPCTSTR lpClassName, LPCTSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam);

Hàm CreateWindow chỉ khác với CreateWindowEx ở chỗ không có tham số dwExStyle.

Gọi CreateWindow hoặc CreateWindowEx. Chuyển vào tham số lpClassName tên hoặc giá trị ATOM của lớp cửa sổ mà bạn đã xác định trong bước đầu tiên hoặc bước thứ hai. Các tham số x, y, nWidth, nHeight có thể là tọa độ và kích thước của cửa sổ đang được tạo. Xử lý cửa sổ cha (nếu có) được chuyển qua hWndParent.

Lưu và phân tích cú pháp giá trị được trả về bởi CreateWindow hoặc CreateWindowEx. Khi thành công, chúng sẽ trả về một chốt cho cửa sổ mới; nếu thất bại, NULL.

Đề xuất: