2010-11-03 12 views
19

Sử dụng công cụ Spy ++, có vẻ như một số ứng dụng Microsoft sử dụng các lớp cửa sổ NetUIHWNDDirectUIHWND; ví dụ: ribbon của Word 2010 dường như là NetUIHWND, thay vào đó cửa sổ Windows Live Messenger có vẻ là DirectUIHWND.NetUIHWND và DirectUIHWND

Các lớp cửa sổ này dường như lưu trữ loại đồ họa thú vị (với bóng, độ dốc, v.v ...); có thể sử dụng các lớp cửa sổ này trong các ứng dụng Win32 C++ của riêng mình không? Có tài liệu nào về chúng không?

Trả lời

14

Vâng, nó đã được khoảng một thời gian rồi. Nhưng nó được đặc biệt là rất nhiều cách sử dụng trong Windows7. Thật không may, họ giữ cái này cho chính mình, nó không có giấy tờ. Bạn có thể thử đảo ngược kỹ sư, sử dụng ListView làm hướng dẫn cho những gì nó có thể làm. Nhưng mã của bạn gần như chắc chắn sẽ phá vỡ trong phiên bản tiếp theo của Windows. Tôi nghĩ đó là điểm không ghi lại nó, họ cần một cái gì đó mà họ không cần phải tương thích ngược để có thể cải thiện giao diện của hệ điều hành.

+6

Bất kỳ ý tưởng nào nếu có ai thiết kế ngược lại? Tôi thực sự muốn hack xung quanh nó: P – Mehrdad

2

NetUIHWND và DirectUIHWND là loại lớp Win32 cho các bộ công cụ GUI khác nhau. Từ quan điểm của Win32, chúng là một bảng điều khiển tự vẽ.

Vì vậy, bạn sẽ không trực tiếp sử dụng các lớp này, bạn sẽ sử dụng các bộ công cụ GUI khác để xây dựng giao diện người dùng.

-1

Sử dụng Microsoft Active Accessibility API:

Không cần phải thiết kế đối chiếu điều này, bạn có thể liệt kê cấu trúc lớp này bằng cách sử dụng Microsoft Active Accessibility API.

+3

Điều này chỉ cho phép bạn truy cập hoặc kiểm tra các trường hợp giao diện người dùng được lưu trữ trong các ứng dụng khác, nó không cho phép bạn sử dụng hoặc lưu trữ giao diện người dùng, đó là những gì OP đang yêu cầu trong khoảng; Câu trả lời của Tim Robinson là câu trả lời đúng cho điều đó. – BrendanMcK

Các vấn đề liên quan