.NET

2008-09-30 7 views
7

में टास्कबार में राइट क्लिक करें एप्लिकेशन मेनू में जोड़ें अधिकांश अनुप्रयोगों में केवल "पुनर्स्थापित, स्थानांतरित करें, आकार, छोटा करें, अधिकतम करें और बंद करें", हालांकि एमएस एसक्यूएल अतिरिक्त विकल्प "सहायता, दृश्य अनुकूलित करें" प्रदान करता है। उन पंक्तियों के साथ, क्या टास्क बार में किसी एप्लिकेशन के दायाँ क्लिक मेनू में जोड़ना संभव है?.NET

नोट: मैं घड़ी के बगल में अधिसूचना क्षेत्र में किसी आइकन का जिक्र नहीं कर रहा हूं।

+1

मैं आपकी मदद नहीं कर सकता, लेकिन जिस मेनू का आप उल्लेख कर रहे हैं वह सिस्टम मेनू है। यह वही है जो विंडो टाइटल बार में एप्लिकेशन आइकन पर क्लिक करते समय प्रदर्शित होता है। हो सकता है कि यह आपको जवाब खोजने के साथ या दूसरों को मदद करेगा :) – OregonGhost

उत्तर

2

यह एक आसान answer मिला है। मैंने जल्दी से इसका परीक्षण किया और यह काम करता है।

मेरे कोड:

private const int WMTaskbarRClick = 0x0313; 
protected override void WndProc(ref Message m) 
    { 
     switch (m.Msg) 
     { 
      case WMTaskbarRClick: 
       { 
        // Show your own context menu here, i do it like this 
        // there's a context menu present on my main form so i use it 

        MessageBox.Show("I see that."); 

        break; 
       } 
      default: 
       { 
        base.WndProc(ref m); 
        break; 
       } 
     } 
    } 
+0

लेकिन यदि आप बस अपना मेनू दिखाते हैं, तो यह मौजूदा मेनू के साथ एकीकृत नहीं होगा। –

0

मैं एप्लिकेशन बनाया है और इस कोड का इस्तेमाल किया और यह अच्छी तरह से काम करता है, लेकिन मैं एक मामूली समस्या यह है कि एक कदम आगे चला जाता है आई है। मैंने एक संदर्भ मेनू बनाया है जिसे राइट क्लिक पर विंडोज सिस्टम मेनू की नकल करना है। जब टास्कबार पर राइट क्लिक करते हैं तो संदर्भ मेनू दिखाई देता है, लेकिन इसके नीचे टास्कबार के शीर्ष पर रुक जाता है। एक्स स्थिति सही है, लेकिन मैं चाहता हूं कि वाई स्थिति को सामान्य विंडोज सिस्टम मेनू की तरह टास्कबार पर दिखाना पड़े। क्या इसे करने का कोई तरीका है? यहां संदेश कोड के बजाय मैंने जो कोड डाला है, वह उपरोक्त कोड से दिखाएं।

contextMenuStrip.Show(Cursor.Position.X, Cursor.Position.Y);