2009-12-09 16 views
5

Tôi muốn ai đó đưa ra ví dụ làm việc SetWindowPos về cách tạo cửa sổ "trên cùng" (ở trên cùng và ở đó) bằng cách sử dụng C/C++/C# . Cảm ơn trước!C/C++/C# SetWindowPos: Cửa sổ trên đầu trang của những người khác

+2

điều gì sai với ví dụ MSDN? – Naveen

+0

thực sự, câu trả lời nằm ở trước mũi của bạn :) – Pieter888

+0

Phương pháp chính xác sẽ khác hoàn toàn giữa C/C++ và C#, vì vậy, bạn nên xác định xem bạn đang sử dụng phương thức nào trong ba phương pháp này. –

Trả lời

4

C/C++:

// This doesn't size or move the window, just makes it top-most. 
SetWindowPos(hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); 
+0

Tôi không hiểu điều này, làm thế nào để tôi cho nó biết ứng dụng nào sẽ đứng đầu? –

+1

Tham số hWnd chỉ định cửa sổ sẽ được di chuyển lên trên cùng. –

1

C#

this.TopMost = true; 
+0

Tôi không biết về C và C++ mặc dù ... – Pieter888

+0

Điều này sẽ không giúp ích cho các cửa sổ khác ngoại trừ biểu mẫu đăng ký. –

1

Tôi chạy vào vấn đề này một thời gian trước, và hỏi những câu hỏi here. Các chi tiết thực tế của vấn đề của tôi có lẽ không giống như của bạn, nhưng chỉ trong trường hợp, tôi sẽ tóm tắt câu hỏi của tôi và câu trả lời.

Tôi cần giữ một ứng dụng (WPF) cụ thể trước hết mọi lúc nó đang chạy để cố gắng từ chối truy cập vào phần mềm khác trên máy. Tôi đã kết thúc chạy một bộ đếm thời gian mỗi 1/4 giây mà làm cho một cuộc gọi ra để sử dụng phương pháp SetForegroundWindow(IntPtr hWnd) của user32.dll để lấy tập trung vào các ứng dụng, cùng với thiết lập TopMost = true trên cửa sổ của tôi.

HTH

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