दिलचस्प पोस्ट
पोस्टग्रेएसक्यूएल – ग्रुप बाय क्लॉज में दिखाई देता है या किसी समस्त फ़ंक्शन में इस्तेमाल किया जाता है एमवीसी 3 में कोड प्रथम इकाई फ़्रेमवर्क (4.1) का उपयोग करते हुए मैं विदेशी कुंजी रिश्ते की घोषणा कैसे करूं? त्रुटि: पैकेज javax.servlet मौजूद नहीं है जावा में सिंगलटन के रूप में एन्यूम का उपयोग करने के लिए सबसे अच्छा तरीका क्या है? बाइनरी स्ट्रिंग को पूर्णांक में कनवर्ट करें ऑब्जेक्ट्स का निर्माण: कन्स्ट्रक्टर्स या स्टेटिक फैक्टरी मेथड्स प्रतिबद्ध संदेश में गिट के शाखा नाम कैसे जोड़ सकते हैं? jQuery के फ़ंक्शन नए जोड़े गए डोम तत्वों के लिए बाध्य नहीं है स्विफ्ट अर्रे ऐच्छिक प्रकार और सबस्क्रिप्टिंग (बीटा 3) सीआरएल और पीएचपी का इस्तेमाल करके एफटीपी से एक फाइल डाउनलोड करें एक asp.net वेबसाइट में Quartz.net सेटअप प्रकार के मामले पर स्विच करें # दिनों में दिन में जावा में कैसे जोड़ सकते हैं जावा आयात कैसे काम करता है? WPF छवि एक कैनवास पर परतों के साथ पैन, ज़ूम और स्क्रॉल करें

डॉक आइकन कैसे छिपाएगा

मैं डॉक आइकन छिपाने और NSStatusItem दिखाने के लिए प्राथमिकता बनाना चाहता NSStatusItem । मैं StatusItem बना सकता हूं लेकिन मुझे डॉक से आइकन को निकालने का तरीका नहीं है। : – /

कोई विचार?

Solutions Collecting From Web of "डॉक आइकन कैसे छिपाएगा"

मुझे लगता है कि आप Info.plist में LSUIElement तलाश कर रहे हैं

LSUIElement (स्ट्रिंग) यदि यह कुंजी "1" पर सेट है, तो लॉन्च सर्विसेज एक एजेंट एप्लिकेशन के रूप में चलाती है एजेंट एप्लिकेशन डॉक या फोर्स रिक्त विंडो में दिखाई नहीं देते हैं। हालांकि वे आम तौर पर पृष्ठभूमि एप्लिकेशन के रूप में चलाते हैं, वांछित होने पर उपयोगकर्ता इंटरफ़ेस पेश करने के लिए अग्रभूमि में आ सकते हैं।

इसे चालू / बंद करने के बारे में एक संक्षिप्त चर्चा देखें

एप्लिकेशन बंडलों को संशोधित करने और मैक ऐप स्टोर ऐप / (शेर ऐप्स?) की गारंटी देने के लिए एप्पल के दिशानिर्देशों का पालन करते समय ऐसा करने के लिए, जानकारी के आधार पर आपके हस्ताक्षर टूटे नहीं होंगे, आप लिस्पियिलमेंट को 1 में डिफ़ॉल्ट रूप से सेट कर सकते हैं, तब जब एप्लिकेशन लॉन्च करती है:

 ProcessSerialNumber psn = { 0, kCurrentProcess }; TransformProcessType(&psn, kProcessTransformToForegroundApplication); 

इसे डॉक आइकन दिखाने के लिए, या यह बाईपास अगर उपयोगकर्ता ने आइकन नहीं करना चाहता।

लेकिन एक तरफ प्रभाव है, तब तक एप्लिकेशन का मेन्यू तब तक नहीं दिखाया जाता जब तक यह नुकसान नहीं होता है और फ़ोकस को पुनः प्राप्त करता है।

स्रोत: एक चेकबॉक्स बनाना डॉक आइकन ऑन और ऑफ़ टॉगल करें

व्यक्तिगत तौर पर मैं किसी भी Info.plist विकल्प को सेट करना पसंद नहीं करता और TransformProcessType(&psn, kProcessTransformToForegroundApplication) या TransformProcessType(&psn, kProcessTransformToUIElementApplication) TransformProcessType(&psn, kProcessTransformToForegroundApplication) TransformProcessType(&psn, kProcessTransformToUIElementApplication) का उपयोग उपयोगकर्ता सेटिंग क्या है पर आधारित है।

यहां से प्रेरित, आप ऐसा कर सकते हैं:

 [NSApp setActivationPolicy: NSApplicationActivationPolicyAccessory]; 

या

 [NSApp setActivationPolicy: NSApplicationActivationPolicyProhibited]; 

इसे डॉक आइकन छुपा देना चाहिए NSApplicationActivationPolicy बारे में कुछ दस्तावेज के लिए यहां देखें।

संबंधित प्रश्न "डॉक आइकन के बिना मैक ओएस एक्स में जीयूआई प्रक्रिया शुरू करें" भी देखें

एक्सकोड 4 में इसे "एप्लिकेशन एजेंट (यूआईईलेमेंट)" के रूप में दिखाया गया है और यह बूलियन है

आपके Info.plist में रिक्त स्थान पर नियंत्रण-क्लिक करें और मेनू से "पंक्ति जोड़ें" चुनें प्रकार "अनुप्रयोग एजेंट है (UIElement)" यह हाँ सेट करें

इसे वैकल्पिक बनाने के लिए मैंने अपने कोड में निम्न पंक्ति जोड़ दी है (धन्यवाद वलेक्सा!)

  // hide/display dock icon if (![[NSUserDefaults standardUserDefaults] boolForKey:@"hideDockIcon"]) { //hide icon on Dock ProcessSerialNumber psn = { 0, kCurrentProcess }; TransformProcessType(&psn, kProcessTransformToForegroundApplication); } 

स्विफ्ट के लिए अपडेट: (उपरोक्त दोनों तरीकों का उपयोग करें, उनका एक ही परिणाम है)

 public class func toggleDockIcon_Way1(showIcon state: Bool) -> Bool { // Get transform state. var transformState: ProcessApplicationTransformState if state { transformState = ProcessApplicationTransformState(kProcessTransformToForegroundApplication) } else { transformState = ProcessApplicationTransformState(kProcessTransformToUIElementApplication) } // Show / hide dock icon. var psn = ProcessSerialNumber(highLongOfPSN: 0, lowLongOfPSN: UInt32(kCurrentProcess)) let transformStatus: OSStatus = TransformProcessType(&psn, transformState) return transformStatus == 0 } public class func toggleDockIcon_Way2(showIcon state: Bool) -> Bool { var result: Bool if state { result = NSApp.setActivationPolicy(NSApplicationActivationPolicy.Regular) } else { result = NSApp.setActivationPolicy(NSApplicationActivationPolicy.Accessory) } return result } 

यदि आप इसे उपयोगकर्ता प्राथमिकता बनाना चाहते हैं तो आप UIElement का उपयोग नहीं कर सकते। UIElement एप्लिकेशन बंडल में रहता है आपको ऐप बंडल में किसी भी फ़ाइल को संपादित नहीं करना चाहिए क्योंकि इससे बंडल के हस्ताक्षर को अमान्य किया जा सकता है।

मैंने पाया सबसे अच्छा उपाय इस उत्कृष्ट लेख पर आधारित है। मेरा समाधान दान द्वारा टिप्पणी पर आधारित है। संक्षेप में, कोको के साथ ऐसा करने का कोई रास्ता नहीं है, लेकिन कार्बन कोड के एक छोटे से हिस्से के साथ संभव है।

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