2011-07-28 28 views
5

Tôi muốn hiển thị CFileDialog như hình dưới đây trong Windows 7.Display XP Phong cách CFileDialog trong Windows 7

desired dialog

Theo msdn

nếu OFN_ENABLETEMPLATE được thiết lập và OFN_EXPLORER cờ không phải là thiết lập, hệ thống sử dụng mẫu để tạo ra một hộp thoại kiểu cũ thay thế hộp thoại mặc định.

Nhưng ngay cả sau khi làm những gì tôi nhận được là một cái gì đó như thế này. The one I get

Xin vui lòng trợ giúp!

+0

liên kết đến msdn không đúng định dạng, tại sao bạn tiếp tục trả lại văn bản thay vì liên kết? – unkulunkulu

+0

stackoverflow không cho phép nhiều hơn hai siêu liên kết! và họ không cho phép hình ảnh cho người dùng danh tiếng dưới đây 10. vì vậy tôi đã sử dụng siêu liên kết cho hai hình ảnh và tôi phải tạo văn bản liên kết msdn. chỉ thiếu phần http: //. –

+0

Tại sao bạn muốn cửa sổ cũ xp phong cách một thay vì cửa sổ 7 tương đương? –

Trả lời

3

Hãy thử điều này:

CFileDialog fd(1,0,0,0,0,0,0,FALSE); 
fd.m_ofn.lStructSize = sizeof(OPENFILENAME_NT4); 
fd.DoModal(); 

Tham số cuối cùng để xác định ctor Vista-style là sai, và kích thước cấu trúc của sizeof ed với để phản ánh NT4 tập tin thoại.

0

Tôi không nghĩ bạn có thể. Cửa sổ đó thuộc về hệ điều hành và không được triển khai nữa. Điều gần nhất bạn có thể sử dụng là hộp thoại kiểu cũ.

Bạn có thể cố gắng tùy chỉnh hình ảnh này bằng cách gắn cửa sổ nhưng không dễ dàng và tôi không đáng giá.

+0

Thực ra hình ảnh đầu tiên là một hộp thoại mà một ứng dụng khác hiển thị trong Windows 7! Tôi muốn biết liệu tôi có thể hiển thị CFileDialog từ ứng dụng của tôi như thế không! Vui lòng kiểm tra hai hình ảnh. –

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