scrollPoint

muqaddarmuqaddar Administrateur
22:20 modifié dans API AppKit #1
Salut,

Apparemment, on peut positionner du texte dans un textField avec scrollPoint.

[textField scrollPoint: NSMakePoint(currentPosition,0)];


Mais chez moi, ça ne fait rien...
Have you got an idea ?  o:)

Réponses

  • mpergandmpergand Membre
    22:20 modifié #2
    Hum, tu veux faire quoi là  ?

    C'est une méthode de NSView et ça ne fonctionne que associé à  un NSClipView.

    J'ai déjà  utilisé scrollToPoint et ça marche bien.
  • muqaddarmuqaddar Administrateur
    22:20 modifié #3
    Salut marc,

    Je veux faire défiler du texte.
    C'est quoi un NSClipView, j'en vois pas ds la palette d'IB... si ça peut remplacer mon textField je suis preneur.
  • mpergandmpergand Membre
    22:20 modifié #4
    Si tu veux faire défiler du texte horizontalement, il faut le faire à  la main avec timer et tout et tout  :)
  • muqaddarmuqaddar Administrateur
    22:20 modifié #5
    Oui, c'est ça.

    J'ai un timer et tout et tout. :)
    Il appelle une fonction, et j'avais trouvé un exemple avec scrollPoint.
    Seulement, ça ne fait pas grand chose.

    C'est quoi cette NSClipView ?

    L'exemple : http://www.cocoadevcentral.com/articles/000044.php
  • mpergandmpergand Membre
    mars 2005 modifié #6
    Dans l'exemple creditField est un NStextView (enfin je suppose) qui donc possède un clipView.

    J'ai regardé la doc pour NSClipView et NSScrollView, c'est bien compliqué cette histoire, je trouve pas les constructeurs en ObjC!

    Je pense que le mieux est de sous classer NSTextField et de gérer le décalage dans cette classe
  • muqaddarmuqaddar Administrateur
    22:20 modifié #7
    Bahm.

    Merde, c'est bien compliqué effectivement. :(

    En plus, NSTextView ne gère pas la transparence... et j'en ai besoin.

    Je veux bien sous-classer NSTextField, mais je vois pas en quoi ça peut solutioner le pb. Il faut que je surcharge des méthodes ?
  • mpergandmpergand Membre
    22:20 modifié #8
    Oui, oui, les doigts dans le nez avec setBoundsOrigin  ;)
  • 22:20 modifié #9
    Si c'est juste pour afficher une phrase (sans édition possible), le mieux est encore de faire ta vue perso, et utiliser les méthodes drawAtPoint de NSString ou NSAttributedString.
  • ClicCoolClicCool Membre
    22:20 modifié #10
    dans 1110969905:

    En plus, NSTextView ne gère pas la transparence... et j'en ai besoin.


    Comment ça NSTextView ne gère pas la transparence ?

    Si c'est le cas ne l'ébruites pas car mes NSTextViews ne le savent pas encore et sont transparents quand je leur demande  ;D

    ça se passe au niveau du BackGroundColor.
    Tu fais un setBackGroundColor en transmettant une NSColor avec la valeur alpha que tu veux et hop ...  :)

    PS tu peux aussi la construire transparente une fois pour toute sous IB:
    Panneau attributes, bkgdColor et tu joues avec le slider "opacity" en bas de la palette des couleurs.
  • mpergandmpergand Membre
    22:20 modifié #11
    ;D ;D ;D

    [Fichier joint supprimé par l'administrateur]
  • muqaddarmuqaddar Administrateur
    mars 2005 modifié #12
    Yo.

    @mpergand : sympa ton appli.
    @ClicCool : ah oui, fallait aller ds les couleurs pour la transparence, alors que pour NSTextField, il suffit de sélectionner le bon cadre, ce qui m'a trompé.
    @Renaud : je fais un autre test, avant d'essayer de faire une vue perso ou de sous-classer NSTextField.


    EDIT : on parle de sous-classer NSTextField, et pourtant setBoundsOrigin est une méthode de NSView... je suis plus.
  • mpergandmpergand Membre
    22:20 modifié #13
    C'est comme tu veux, soit tu pars de NSTextField, soit de NSView et tu dessines le texte avec drawAtPoint de NSAttributedString, comme l'a dit Renaud.
  • muqaddarmuqaddar Administrateur
    22:20 modifié #14
    Bon, bein voilà , je viens de sous-classer NSView et ça marche !
    Merci à  vous pour vos conseils.

    Vous savez comment on peut calculer la longueur d'une string en pixels ?
  • BruBru Membre
    22:20 modifié #15
    dans 1111065185:

    Vous savez comment on peut calculer la longueur d'une string en pixels ?


    Méthode [tt]- (NSSize)sizeWithAttributes:(NSDictionary *)attributes[/tt] de NSString.

    .
  • mpergandmpergand Membre
    22:20 modifié #16
    [grilled]
    ou size de NSAttributedString
  • muqaddarmuqaddar Administrateur
    22:20 modifié #17
    dans 1111065604:

    dans 1111065185:

    Vous savez comment on peut calculer la longueur d'une string en pixels ?


    Méthode [tt]- (NSSize)sizeWithAttributes:(NSDictionary *)attributes[/tt] de NSString.

    .


    Super. Bien le merci à  toi et à  mpergand.
Connectez-vous ou Inscrivez-vous pour répondre.