2011-05-22 27 views
6

Menü çubuğu, dock simgesi olmayan veya uygulama değiştiricide oturan bir uygulama oluşturmak istiyorum. Temel olarak, Quicksilver gibi olmalı: Küresel bir kısayol tuşu aracılığıyla, Safari'den söyleyeyim ve küçük bir pencere belirirdi, ancak Safari aktif değil, aynı zamanda farklı bir menubar gösterisi yapmaz. Umarım ne demek istediğimi anlarsın ...Mac OS X - menü olmadan uygulama?

Bunu nasıl yaparım? Dock simgesini, uygulama değiştiriciyi engelleyebilirim ancak uygulamanızın penceresinin gösterdiği sırada veya diğer uygulamaları nasıl kaldırabildiğimi diğer uygulamaların nasıl aktif hale gelmesini engelleyebileceğimi bilmiyorum.

Herhangi bir ipucu için teşekkürler!

cevap

6

"LSUIElement" araması yapmayı deneyin. Bu size ihtiyacınız olan tüm bilgileri vermelidir. (Bu buluş özellikle this page in the documentation).

+0

: Sonra

, aslında uygun zamanda (örneğin küresel bir klavye kısayolu ile tetiklendiğinde), böyle bir şey yapabileceğini de öne bir pencere getirmek için Pencereyi açın ve diğer uygulamanın penceresini veya diğer yolunu devre dışı bırakın ... – ryyst

+1

@ryyst: Uygulamanızın penceresinin "ana" olmaksızın "anahtar" olmasını istersiniz. –

+0

@Josh Caswell: Bunu yapıyorum, ancak uygulama pencerem etkin değil (gri). Bir 'NSTextField' ilk yanıtlayıcıyı yapmaya çalışıyorum, ancak bu işe yaramıyor ... – ryyst

5

olarak Dave zaten uygulamanın Info.plist dosyasının

LSUIElement YES 

ekleyin söyledi. Bu simge ve menü çubuğundan kurtulacaktır. Ben hala sadece iki uygulamamın etkinleştirebilirsiniz

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

[someWindow makeKeyAndOrderFront:nil]; 
+0

Uygulamamın penceresinin ön tarafa gelmesini istiyorum ve etkin olmayan bir uygulama olmadan açık bir uygulama olmadan bir metin alanına yazı yazabilmek istiyorum (yani başlık çubuğu açık gri renktedir). – ryyst

+0

Yukarıdaki kod, sadece bunu yapmanız için çalışmıyor mu? Metin alanı odağı için ilk yanıtlayıcıyı ayarlamanız gerekebilir, ancak diğerleri çalışmalıdır. – puzzle

+0

Hayır, değil. Dediğim gibi, diğer uygulamalar inaktif hale geliyor. – ryyst