Donner le focus à  n'importe quelle fenetre

APAP Membre
08:59 modifié dans API AppKit #1
Bonjour,

Je cherche une méthode (autorisée sur le MAS) qui permettrait de donner le focus à  n'importe quelle fenêtre.
J'arrive pour le moment avec l'API d'accessibilité à  la mettre au premier plan mais ca s'arrête là , elle n'a pas le focus.

Toutes les pistes sont les bienvenues.

Merci
:)

Réponses

  • devulderdevulder Membre
    08:59 modifié #2
    dans 1318852355:

    Bonjour,

    Je cherche une méthode (autorisée sur le MAS) qui permettrait de donner le focus à  n'importe quelle fenêtre.
    J'arrive pour le moment avec l'API d'accessibilité à  la mettre au premier plan mais ca s'arrête là , elle n'a pas le focus.

    Toutes les pistes sont les bienvenues.

    Merci
    :)


    Vu sur le net,

    [window setLevel:NSScreenSaverWindowLevel + 1];
    [window orderFront:nil];

    A voir.....
  • APAP Membre
    08:59 modifié #3
    Merci pour ta réponse.

    MAlheureusement ta méthode ne fonctionne que pour les fenetres de mon appli, par pour celles d'appli tierces
  • HerveHerve Membre
    08:59 modifié #4
    Ce ne serait pas les méthodes liées à  "first responder"?
    -(BOOL) acceptFirstResponder<br />-(BOOL) resignFirstResponder<br />-(BOOL) becomeFirstResponder
    


    Dans le bouquin de Aaron Hillegass, il y avait un exercice avec ce truc. Avec Tab, le focus passait d'un container à  l'autre. Autant que je me souvienne, il y avait des liens dans IB...
  • laudemalaudema Membre
    08:59 modifié #5
    Dans une application First Responder c'est toujours celui de ton application, pas celui des autres applis.
    Dans son cas c'est vers ou Quartz ou AppleScript que j'orienterais mes recherches ..
  • APAP Membre
    08:59 modifié #6
    Finalement c'est un mélange d'accessibility et de carbon (setfrontproncess) pour arriver à  ses fins.
  • CéroceCéroce Membre, Modérateur
    08:59 modifié #7
    Mais en utilisant des API Carbon, l'appli ne compile pas en 64 bits...
  • APAP Membre
    08:59 modifié #8
    Tu es sûr? je compile en 64 bit et j'utilise pourtant quelques fonctions carbon (SetFrontProcessWithOptions par exemple)
  • mpergandmpergand Membre
    novembre 2011 modifié #9
    dans 1320440777:

    Tu es sûr? je compile en 64 bit et j'utilise pourtant quelques fonctions carbon (SetFrontProcessWithOptions par exemple)


    A priori pas de problème :
    Process Manager

    ApplicationServices: Processes.h

    Several Process Manager data structures with fields that refer to the FSSpec type are not available to 64-bit applications. The Process Manager provides 64-bit versions of these data structures with fields that refer to the FSRef type.


    Carbon 64Bit Guide
  • CéroceCéroce Membre, Modérateur
    08:59 modifié #10
    Non, je ne suis pas sûr. Effectivement, ça doit dépendre des API, mais celles que j'avais regardé ne fonctionnaient qu'en 32 bits.
Connectez-vous ou Inscrivez-vous pour répondre.