IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

JScrollPane revient tout seul au début


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 442
    Par défaut JScrollPane revient tout seul au début
    Bonjour,

    J'ai un petit problème avec mon scrollpane que je n'arrive pas à résoudre :

    J'utilise un JScrollPane pour afficher un JTextPane. Mais quand je fais certaines actions, en particulier des undo/redo, la vue remonte en haut de page. Comment éviter ce phénomène très pénible pour l'utilisateur ?

    Merci !

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Tu fais comment tes undo/redo?

    Le plus simple serait qu'avant de faire le undo/redo, tu mémorise la position du scroll pane et tu le repositionne imédiatement de la même manière.

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 442
    Par défaut
    J'utilise un undoableEditListener* avec lequel je fais tout simplement appel à la méthode undo().

    Le problème c'est que le undoableEditListener a pas forcément accès au ScrollPane... Une idée sur l'origine de cet effet de retour au début ? J'ai eu l'impression en cherchant sur internet qu'il faudrait peut-être utiliser la méthode setCaretPolicy de la class DefaultCaret, mais je n'ai pas trouvé comment...

    *edit : un UndoManager, pardon

  4. #4
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 442
    Par défaut
    Ok, au temps pour moi, apparemment c'est juste la gestion de la position du caret lors des undo/redo qui est un peu spéciale. Je devrais arriver à régler le problème tout seul du coup. Merci tchize. Désolé du dérangement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Après suppression, ASP.dll revient toute seule
    Par Soft Concept dans le forum ASP
    Réponses: 3
    Dernier message: 18/11/2009, 13h13
  2. [Swing] JPanel avec sa JScrollBar qui scrolle toute seule
    Par chcoust dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 22/11/2006, 14h37
  3. formulaire se vide tout seul
    Par faamugol dans le forum ASP
    Réponses: 2
    Dernier message: 14/06/2004, 14h54
  4. Mon ordi redemarre tout seul...
    Par le Daoud dans le forum Administration système
    Réponses: 10
    Dernier message: 11/04/2004, 20h08
  5. TCanvas et handle qui se désalloue tout seul
    Par efourmon dans le forum Langage
    Réponses: 3
    Dernier message: 14/01/2004, 11h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo