Sniqt को सभी ट्रे क्षमताओं को पहचानें (या Qt में एक कार्यशील संकेतक बनाएं)


9

यह मेरा पुराना धागा है: मैं क्यूटी / सी ++ के साथ काम करने वाला संकेतक कैसे बनाऊं? जहां मुझे अपने आवेदन के लिए उबंटू में एक ट्रे आइकन बनाने के लिए QSystemTray पुस्तकालय का उपयोग करने का सुझाव दिया गया था।

Sniqt एक ऐसा प्रोग्राम है जो बाकियों का ख्याल रखता है। जैसा कि ज्ञात है, उबंटू ने ट्रे आइकन से छुटकारा पा लिया है। इसके बजाय, यह अब संकेतक और केवल संकेतक का उपयोग करता है। Sniqt Qt ट्रे के आइकनों को वर्किंग इंडिकेटर्स में परिवर्तित करता है।

समस्या यह है कि यह बहुत अच्छा रूपांतरण नहीं करता है। एकल क्लिक, मध्य क्लिक आदि जैसे कार्य काम नहीं करते हैं, जबकि वे उन प्रणालियों में करते हैं जो ट्रे आइकन का समर्थन करते हैं।

क्या इन कार्यों को वापस करने का कोई तरीका है? क्या मैं उबंटू में QSystemTray आइकन का उपयोग कर सकता हूं और अभी भी ये दिलचस्प (और मेरे अवसर पर) बहुत ही उपयोगी हैं?

मुझे उस दूसरे धागे के उत्तर को जानकर खुशी होगी, जिसके बारे में मैंने पहले बात की थी (जीटीके पुस्तकालयों का उपयोग करके काम करने वाले संकेतक कैसे बनाएं और दुर्घटना को रोकें), साथ ही साथ।

Sniqt बग के लिए लिंक: https://bugs.launchpad.net/sni-qt/+bug/1027652


क्या यह सभी संकेतकों के लिए सामान्य व्यवहार नहीं है? वे केवल लेफ्ट-क्लिक और स्क्रॉल ईवेंट स्वीकार करते हैं।
तिमो

नहीं! यदि आप उदाहरण के लिए ध्वनि आइकन पर क्लिक करते हैं, तो यह ध्वनि को म्यूट / अनम्यूट करेगा। अपने आवेदन में, मैं इसे छोड़ देना चाहता हूं।
१६:४६ बजे hytromo

@mateo_salta, कृपया इसे askubuntu.com/questions/158323/… के
hytromo

जवाबों:


0

ऐसा लगता है कि क्यूटी इस बात का समर्थन नहीं करता है, कम से कम उबंटू एकता पर, भले ही इसका संकेत 'सक्रिय' हो। इसलिए मैं आपको जीटीके और एक सामान्य ट्रेकॉन का उपयोग करने की सलाह दूंगा, मुझे क्यूटी के साथ कोई विकल्प नहीं दिखता है। आप इस पर स्पष्टीकरण के लिए क्यूटी के डेवलपर्स से संपर्क कर सकते हैं।


1
क्षमा करें, लेकिन Qt में वास्तव में इसकी ट्रे आइकन पर यह कार्यक्षमता है। मेरी ट्रे की कार्रवाई अन्य प्रणालियों में निर्दोष रूप से काम करती है। यह उबंटू की समस्या और संकेतक के साथ इसकी जिद है। Sniqt मुद्दे को हल करने में सक्षम हो सकता है
hytromo

2
मैं पुष्टि कर सकता हूं कि यह Qt की गलती नहीं है। मुझे भी संदेह है कि समस्या किसके साथ है sniqt। मुझे पता नहीं है कि एप्लिकेशन संकेतक बाएं और दाएं क्लिक के बीच अंतर करने की क्षमता भी रखते हैं। यह मेरे लिए लगातार निराशा का स्रोत रहा है।
नाथन उस्मान

1

एकता, पसंद से, जो आप "सभ्य ट्रे आइकन" के रूप में संदर्भित कर रहे हैं का समर्थन नहीं करता है। यह संकेतक है या कुछ भी नहीं है। वहाँ से आपके पास कई विकल्प हैं:

  • सीमित संकेतक क्षमताओं के साथ करें। आप मानक QSystemTray.setContextMenu () विधि के साथ अपने संकेतक द्वारा उपयोग किए जाने वाले मेनू को सेट कर सकते हैं।

  • अपने ऐप को पूरी तरह से सिस्ट्रे से अलग कर लें। के रूप में, इसे डेस्कटॉप पर एक फ्लोटिंग आइकन में बदल दें, जो कि ईश्वर और मथियास एट्रिच के अनुसार मध्य और राइट-क्लिक को स्वीकार करने में सक्षम होगा। आप इसे यहां कैसे करें इसका एक सरल उदाहरण पा सकते हैं: http://kde-apps.org/content/show.php/KEyes?content=51493 (वैकल्पिक रूप से, यह केवल तभी करें जब आपको पता चले कि आप यूनिटी के तहत चल रहे हैं। यदि $ DESKTOP_SESSION 'ubuntu' पर सेट है।)

  • एकता को असमर्थ घोषित करें। यह बहुत अच्छा विकल्प नहीं है।

आप विकल्प 1 या 2 के साथ जाना चाहते हैं या नहीं, यह मुख्य रूप से आपके आवेदन पर निर्भर करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.