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

Delphi Discussion :

WebBrowser + Scrolling


Sujet :

Delphi

  1. #1
    tintin22
    Invité(e)
    Par défaut WebBrowser + Scrolling
    Salut, Je voudrais faire un scrolling automatique du WebBrowser vers le bas de la page, j'ai trouvé ce bout de code mais il marche pas à 100 !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure TForm1.WBDocumentComplete(Sender: TObject;
      const pDisp: IDispatch; var URL: OleVariant);
    var ParentW: OLEVariant;
    begin
      if WB.Document <> nil then
      begin
        ParentW := WB.OleObject.Document.ParentWindow;
        ParentW.ScrollTo(0, ParentW.Screen.Height);
      end;
    end;
    Merci d'avance.

  2. #2
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Le message WM_SCROLL semble convenir :
    SB_BOTTOM = Scroll à la fin.
    SB_ENDSCROLL = Fin de scroll.
    SB_LINEDOWN = Scroll une ligne en bas.
    SB_LINEUP = Scroll une ligne en haut.
    SB_PAGEDOWN = Scroll une page en bas.
    SB_PAGEUP = Scroll une page en haut.
    SB_THUMBPOSITION = Scroll à une position absolue.
    La position courante est fournie dans le deuxième paramètre.
    SB_THUMBTRACK = Glisse la boîte de scroll à une position specifiée.
    La position courante est fournie par le deuxième paramètre.
    SB_TOP = Scroll au début.
    Utilise la méthode Perform pour effectuer l'action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WebBrowser1.Perform(WM_VSCROLL, SB_TOP, 0);
    On peut le faire avec les messages windows aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SendMessage(WebBrowser1.Handle, WM_VSCROLL, SB_TOP, 0);
    De retour parmis vous après 10 ans!!

  3. #3
    tintin22
    Invité(e)
    Par défaut
    Merci Sub0 pour ta reponse, c'est ce que j'avais fait avec un Memo (pas sûr qu'il y avait SB_TOP,0) mais ça marchait pas avec le WebBrowser.
    Au fait, je construis dynamiquement la page html dans le code et je mets à jour son contenu au fur et à mesure.
    J'ai trouvé une astuce pour ceux que ça interesserait, c'est d'inserer une ancre à la fin de la page

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    </body><p><a name="#fin"</a>
    et ensuite de l'appeler de cette manière

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WebBrowser.Navigate('MaPage.htm#fin');
    Dernière modification par tintin22 ; 22/10/2006 à 11h41.

Discussions similaires

  1. le fameux scrolling
    Par tanmieu dans le forum DirectX
    Réponses: 4
    Dernier message: 27/05/2003, 23h25
  2. scrolling vertical et horizontal
    Par myriam dans le forum MFC
    Réponses: 2
    Dernier message: 24/01/2003, 17h06
  3. scroll dans un label
    Par Pretender dans le forum Composants VCL
    Réponses: 9
    Dernier message: 27/09/2002, 17h06
  4. Webbrowser : Comment ne pas prendre la page en cache
    Par cedm78 dans le forum Web & réseau
    Réponses: 3
    Dernier message: 30/08/2002, 11h17
  5. Détections avec WebBrowser
    Par Wazo_Sportive dans le forum Composants VCL
    Réponses: 4
    Dernier message: 11/08/2002, 19h32

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