2010-08-12 3 views
1

Ceci est un problème plutôt ennuyeux, Le programme lui-même fonctionne très bien sauf quand je vais et le configurer pour commencer à la connexion.NSPanel défini au niveau de Desktopwindowlevel +1 avec visible lors de la connexion

Je l'ai testé en me déconnectant et en entrant. Le programme démarre lorsque je me connecte mais est caché derrière le bureau. Lorsque je clique sur l'icône de l'application dans la barre d'ancrage, elle arrive à l'avant où elle aurait dû être pour commencer.

La question est .. Quelqu'un at-il rencontré ce problème et comment dois-je le réparer? Je veux que le programme soit visible sur le bureau dès que l'ordinateur se connecte. Je n'ai pas eu de problèmes avec IB lorsque je travaillais avec ce logiciel, mais j'utilise NSRects pour dessiner presque tout.

Toutes les réflexions sur ce problème pourraient être utiles. Merci!

Répondre

2

J'ai trouvé la solution à ma question. Cela a à voir avec le fait que mon application est une application LSUIElement depuis que je la fabrique pour les machines de démonstration du magasin. la raison pour laquelle je ne pouvais pas voir mes fenêtres sur le lancement est à cause de la façon LSUIElements travailler si je devais lui dire de faire quelques petites choses

[[NSApplication sharedApplication]activateIgnoringOtherApps:YES]; 
[window orderFrontRegardless]; 
[window makeKeyWindow]; 
[[NSApplication sharedApplication] activateIgnoringOtherApps:YES]; 

après qu'il semble avoir fonctionné.

+0

Bonne trouvaille, merci pour le partage. – codykrieger

+0

Bienvenue ça a bien fonctionné après l'avoir testé pendant un certain temps, donc si vous avez besoin de faire une application LSUIElement et que vous avez besoin de ses fenêtres pour vous connecter, cela devrait aider. – Kyle

0

J'ai quelque chose comme ça dans l'une de mes applications qui semble fonctionner assez bien:

// open window and force to the front 
[preferencesWindow makeKeyAndOrderFront:nil]; 
[preferencesWindow orderFrontRegardless]; 
[preferencesWindow center]; 

Essayez cela et voir ce qui se passe. Évidemment, vous n'avez pas besoin du [centre de préférencesWindow] si vous ne voulez pas qu'il soit centré.

+0

Ceux qui travaillent tous et j'ai essayé de voir s'ils peuvent résoudre ce problème mais c'est bizarre. L'application commence à la connexion très bien, mais c'est derrière le bureau. Je dois à nouveau cliquer sur l'icône pour l'amener à l'avant et une fois c'est là qu'il est dit. Tous mes autres programmes fonctionnent très bien avec un code similaire que je n'arrive pas à comprendre. Merci pour l'aide qu'il me semble que je vais devoir en faire plus. – Kyle

+0

Bien sûr, laissez-nous savoir si vous trouvez la solution. Désolé, je ne pourrais pas être plus utile! – codykrieger

+0

Eh bien, j'ai trouvé que quelque chose qui cause des problèmes dans l'application est défini comme étant un problème parce que je voudrais que l'application n'agisse pas normalement pour mes propres raisons, car elle ne devrait pas avoir une icône affichée dans le dock sur. J'ai une autre application que j'ai définie, mais elle s'affiche correctement lors de la connexion. Si je retire l'option, l'application peut être lancée correctement. – Kyle

Questions connexes