में स्विच एप्लिकेशन मैं सी # एप्लिकेशन लिखना चाहता हूं जो कुछ चल रहे अनुप्रयोगों के बीच स्विच करेगा। इसे विंडोज़ में Alt + Tab जैसी सटीक कार्यक्षमता करना चाहिए। मैं विंडोज एपीआई से SetForegroundWindow()
फ़ंक्शन का उपयोग करता हूं, लेकिन यदि विंडोज़ टास्क बार पर एप्लिकेशन कम हो जाता है तो यह ठीक से काम नहीं करता है। तो मैंने ShowWindow()
फ़ंक्शन जोड़ा, लेकिन एक समस्या है कि विंडो को मूल आकार में विंडो दिखाने के लिए संभव नहीं है जिसे उपयोगकर्ता सेट किया गया है।सी # जैसे टास्क मैनेजर
[DllImport("user32.dll")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
[DllImport("user32.dll")]
public static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
उदाहरण: मैं विंडो को अधिकतम करता हूं, फिर मैं इसे टास्क बार में छोटा करता हूं। जब मैं फोन:
ShowWindow(processWindowHandle, ShowWindowCmd.SW_NORMAL);
WindowsApi.SetForegroundWindow(processWindowHandle);
विंडो को बड़ा नहीं है। मैंने ShowWindowCmd.SW_NORMAL
पैरामीटर के साथ खेलने का प्रयास किया लेकिन उसी परिणाम के साथ।
आप SW_RESTORE की कोशिश की है? – David
हां मैंने SW_RESTORE की कोशिश की। जिस अनुप्रयोग को अधिकतम किया गया था और उसके बाद न्यूनतम किया गया था तब अधिकतम नहीं किया गया (अपेक्षित के रूप में)। यह खिड़की के रूप में दिखाया गया है जो स्क्रीन के अधिकतम आकार के आकार का आकार कम है। –
मैं हर बार विंडो को अधिकतम नहीं करना चाहता हूं। मैं उसी स्थिति में खिड़की दिखाना चाहता हूं जो कि मैं खिड़की को किसी अन्य के साथ छुपाता हूं या इसके लिए मैं इसे टास्क बार में छोटा करता हूं ... –