2011-10-18 20 views
6

Trong linux và khi cài đặt gói vv Có một số trình cài đặt có thanh tiến trình và cửa sổ dos hiển thị các tệp đang được trích xuất v.v. Làm cách nào tôi có thể thêm cửa sổ này vào chương trình C++ Win32 của mình để tôi có thể hiển thị nhiệm vụ im đang làm gì? Tôi không thể tìm thấy bất kỳ tài liệu nào trên MSDN.Có thể nhúng dấu nhắc lệnh vào ứng dụng win32 không?

Câu hỏi: Làm thế nào tôi có thể thêm một cửa sổ giao diện điều khiển (nếu đó là những gì gọi của nó, chắc chắn trông giống như một) trong chương trình của tôi để hiển thị chi tiết của nhiệm vụ trong tầm tay đang được thực hiện?

Đây là một cửa sổ với những gì tôi đang hỏi .. (thông tin cá nhân vì vậy tôi xoá hoàn toàn các chi tiết:..]

enter image description here

Trả lời

6

Bạn không thể nhúng một cửa sổ bàn điều khiển thực bên trong cửa sổ (mặc dù một quá trình cửa sổ có thể có một cửa sổ giao diện điều khiển riêng biệt). Trong khi nó trông giống như một cửa sổ giao diện điều khiển/dấu nhắc lệnh, nó chỉ là vấn đề xuất hiện. Những gì bạn muốn làm là tạo ra một cửa sổ phụ/kiểm soát với các đặc điểm tương tự như một cửa sổ giao diện điều khiển và sau đó chuyển hướng đầu ra bàn điều khiển từ (các) ứng dụng đang chạy để nối thêm vào cửa sổ phụ đó. Để biết thêm thông tin về cách chuyển hướng đầu ra của bàn điều khiển trong Windows, hãy xem http://support.microsoft.com/kb/190351.

0

Hãy thử http://www.codeguru.com/cpp/misc/misc/article.php/c277/ liên kết này, tôi nghĩ rằng giải pháp được cung cấp là những gì bạn cần Tôi đã thử nó nhiều năm trước và nó đã hoạt động.Tôi đã không thử nó trong các phiên bản mới hơn của cửa sổ mặc dù

+0

Gus. không hoạt động trên Windows 7. cảm ơn bạn đã trả lời. – iKlsR

2

"Cửa sổ dos" đó là điều khiển chỉnh sửa thông thường: CreateWindow(ES_MULTILINE, EDIT, ... Tuy nhiên, phông chữ được đặt thành chiều rộng cố định (Có vẻ như chuyển phát nhanh). Điều này được thực hiện bằng cách gửi WM_SETFONT đến điều khiển chỉnh sửa.

2

@ user995048 nói "Bạn không thể nhúng cửa sổ bảng điều khiển thực bên trong cửa sổ khác". Nhưng "không thể" là một từ mạnh mẽ! Tôi có thể chạy toàn bộ máy tính ảo trong cửa sổ nếu muốn. :) Vì vậy, người ta có thể khá hợp lý intuit rằng có những cách để làm những gì bạn nói.

Chắc chắn, đúng là những gì bạn đã thấy gần như chắc chắn là trường hợp chuyển hướng đầu ra thành một tiện ích tùy chỉnh, được thiết kế để bắt chước giao diện đơn giản của thiết bị đầu cuối. Tuy nhiên ... nếu bạn muốn nhúng cửa sổ của một ứng dụng vào trong một cửa sổ khác, có những thứ bạn có thể xem xét trong đó có thể phù hợp. phương pháp hợp tác xã tồn tại như GtkPlug, ví dụ:

http://developer.gnome.org/gtk/2.24/GtkPlug.html

Để thực sự nắm bắt được một không-thiết kế-to-hợp tác cửa sổ ứng dụng và ném nó trong ứng dụng của bạn sẽ phức tạp hơn. Nhưng có thể, cũng giống như chụp màn hình và máy ảo là có thể. Có lẽ tốt nhất để tránh loại điều đó trừ khi có thực sự là một nguyên nhân cho nó, mặc dù ...

+0

lời khuyên công bằng cho bây giờ. cảm ơn – iKlsR

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