Forum Programmation.python python pygtk scrolledwindow gtk.SCROLL_END

Posté par  .
Étiquettes : aucune
0
28
déc.
2008
Hello linuxfrien,

j'essaie désespérément de trouver comment faire que pour que scrolledwindow aie au lancement de mon petit programme tout en bas
du scrolled. j'aie trouver :self.scrolledwindow1.emit('scroll-child', gtk.SCROLL_END, False), mais curieusement cela marche qu'activé par un clic de bouton par exemple.

En fait je voudrais que ma scrolledwindow se place sur la derniere ligne par défaut, ce doit être possible non?

si qq un avait un lien§

Merci
  • # Essai

    Posté par  . Évalué à 2.

    Tu essayes de faire la méthode "visuelle", mais je pense qu'il est beaucoup mieux de le faire plus proche de l'API classique : les scrolledwindow indiquent l'état de leur position par l'intermédiaire d'"adjustements". Donc je suppose qu'il vaut mieux passer par là, genre (code même pas testé) :

    adj = self.scrolledwindow1.get_vadjustment()
    adj.set_value(adj.get_property('upper'))

    Et répéter pour l'adjustment horizontal si c'est ce que tu veux.

    C'est juste une piste, j'avoue que je n'ai jamais essayé de faire ça, mais j'ai déjà manipulé des adjustments et ça marche pas mal.
    • [^] # Re: Essai

      Posté par  . Évalué à 1.

      Merci, pour la réponse, ç'est une bonne piste, mais même si j'arrive à accéder à toutes les propriètés de l'ajustement le set_value ne fait pas douger cette maudite barre ( même déssouler ça marche pas).

      Le fait que je passe par glade peut jouer?
      • [^] # Re: Essai

        Posté par  . Évalué à 2.

        Non non, glade ne change rien. C'est juste que je croyais que le "set_value()" anvoyait le signal, mais apparemment non, donc il faut rajouter un :
        adj.value_changed()
        juste après, et normalement c'est bon.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.