Có cách nào để buộc một cửa sổ khác ở trên cùng không? Không phải cửa sổ của ứng dụng, nhưng một cửa sổ khác, đã chạy trên hệ thống. (Windows, C/C++/C#)C/C++/C# Cửa sổ Force nằm ở trên cùng
Trả lời
Bạn có thể sử dụng API Win32 BringWindowToTop. Phải mất một HWND.
Bạn cũng có thể sử dụng API Win32 SetWindowPos cũng cho phép bạn thực hiện những việc như làm cho cửa sổ trở thành cửa sổ cấp cao nhất.
SetWindowPos(that_window_handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE);
BringWindowToTop
di chuyển cửa sổ để phía trên cùng của Z-trật tự (bây giờ) nhưng không không làm cho nó một cửa sổ trên cùng.
Bạn có thể cho ví dụ được không? –
@Levo: chỉ thay thế tay cầm của cửa sổ bạn muốn trên đầu thay cho 'that_window_handle' trong đoạn mã trên. –
Điều này phải được chấp nhận câu trả lời. – Neolisk
BringWindowToTop() không có tác dụng nếu bạn muốn đưa cửa sổ ứng dụng từ phía sau (hoặc thu nhỏ) lên phía trước. Các mã sau đây làm thủ thuật này đáng tin cậy:
ShowWindow(hwnd, SW_MINIMIZE);
ShowWindow(hwnd, SW_RESTORE);
Nó là chậm trong win XP. – ahoo
Làm việc như một sự quyến rũ! –
BOOL CALLBACK EnumWindowsProc(HWND hWnd, long lParam) {
wchar_t buff[255];
if (IsWindowVisible(hWnd)) {
GetWindowText(hWnd, (LPWSTR) buff, 254);
//wprintf(L"%s\n", buff);
wstring ws = buff;
if (ws.find(L"Firefox") != ws.npos)
{
::SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);
}
}
return TRUE;
}
int main(){
BOOL enumeratingWindowsSucceeded = ::EnumWindows(EnumWindowsProc, NULL);
}
- 1. Làm cách nào để giữ cửa sổ trên cùng của tôi ở trên cùng?
- 2. LUÔN LUÔN trên cửa sổ trên cùng
- 3. Giữ cửa sổ ở trên cùng khi chuyển đổi không gian
- 4. Làm cách nào để chạy .exe nhưng vẫn ở trong cùng cửa sổ lệnh (không mở cửa sổ mới)?
- 5. Tạo một cửa sổ trên cùng bằng cách sử dụng tay cầm cửa sổ
- 6. Chrome: Hiển thị cửa sổ mới ở trên cùng mà không đặt tiêu điểm
- 7. Màn hình chỉ hiển thị ở góc trên cùng bên trái của cửa sổ
- 8. Đặt cửa sổ XAML luôn ở trên cùng (nhưng không có thuộc tính TopMost)
- 9. Buộc MessageBox ở trên cùng của cửa sổ ứng dụng .net/WPF
- 10. Dấu chấm than ở trên cùng bên phải của cửa sổ - qua nút đóng
- 11. SignalR ở dạng cửa sổ
- 12. System.Windows.Forms.WebBrowser mở liên kết trong cùng cửa sổ hoặc cửa sổ mới với cùng một phiên
- 13. PyQt: Luôn ở trên cùng
- 14. Toàn màn hình Python TKinter hoặc cửa sổ wxPython, nhưng 'ở phía dưới cùng' của tất cả các cửa sổ?
- 15. nhãn y trục nằm bên ngoài cửa sổ đồ họa?
- 16. Tạo chân trang CSS hoặc nằm ở cuối cửa sổ trình duyệt hoặc phần cuối của nội dung
- 17. Nằm ở trên của superscript trong WPF
- 18. vài cửa sổ/bộ đệm cùng nhau trong emacs?
- 19. Thay đổi kích thước cửa sổ không viền ở góc dưới cùng bên phải
- 20. Nhận cửa sổ hiện hoạt cuối cùng: Nhận cửa sổ hoạt động trước đó
- 21. Đặt một cửa sổ trên màn hình
- 22. Tắt cửa sổ trên nền
- 23. Tại sao đóng cửa sổ con cuối cùng giảm thiểu cửa sổ chính của nó?
- 24. Java: Thay thế biểu tượng tách cà phê ở góc trên cùng bên trái của cửa sổ
- 25. Cách mở hộp màu từ bên trong khung nội tuyến ở trên cùng của cửa sổ chính
- 26. WPF <StatusBar> không được đặt ở dưới cùng của cửa sổ
- 27. CSS Tôi muốn một div nằm ở trên cùng của tất cả mọi thứ
- 28. WPF luôn ở trên cùng chỉ dành cho cha mẹ
- 29. NSPopover đánh cắp cửa sổ chính làm cho các lựa chọn flash cửa sổ nằm bên dưới. Mọi sửa chữa?
- 30. SQLite trên cửa sổ và trên mono?
Liên kết seccond là không chính xác, bạn có nghĩa là http://msdn.microsoft.com/en-us/library/ms633545%28VS.85%29.aspx Bạn cũng có thể đề xuất một ví dụ về chức năng này không? –
@Levo: Cảm ơn tôi không được sao chép nó vào khay nhớ tạm chính xác trước khi tôi dán. –