Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [AS3] HTML.minVerticalScrollPosition inesistente???

    Ciao a tutti,
    sto sviluppando una piccola chat con Flex 3.5.
    Per mostrare i messaggi inviati utilizzo un box HTML al quale li appendo.
    Ora devo fare in modo che quando il testo supera l'altezza del box HTML la scrollbar resti automaticamente in basso (come msn per intenderci) però nell'IDE di Flex Builder, vedo che l'unica cosa che posso fare è
    codice:
    view.verticalScrollPosition = view.maxVerticalScrollPosition;
    E' possibile che non esista un minVerticalScrollPosition??? °_°
    Che senso ha mettere a disposizione un valore max e non un min?
    Che sia calcolabile per altre vie?
    Se si qualcuno saprebbe dirmi come? ^^

    Grazie in anticipo =)
    Flash Developer for Rich Media
    PHP, jQuery Developer

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Non capisco, secondo te minVerticalScrollPosition nel tuo lavoro quale valore dovrebbe assumere?

  3. #3
    L'opposto di maxVerticalScrollPosition, niente meno che il valore che assumerebbe verticalScrollPosition quando la barra è tutta in basso.
    Avrei detto che questo valore è 0, ma ho provato e sembra non essere così...

    EDIT:
    sto scoprendo di fare confusione.... effettivamente lo 0 è quando la barra è tutta in alto... e il max è quando è tutta in basso... sta di fatto però che facendo
    codice:
    view.verticalScrollPosition = view.maxVerticalScrollPosition;
    la barra non mi cambia posizione ....

    EDIT:
    ok ho capito!
    evidentemente non mettevo questa funzionalità all'interno di un evento giusto.
    Ora l'ho inserito in un Event.ENTER_FRAME ed è a posto.

    Grazie cmq!
    Flash Developer for Rich Media
    PHP, jQuery Developer

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Infatti quello dello 0 era lo stesso ragionamento che facevo io e non capivo cosa dovessi ottenere con un ipotetico valore minimo.
    Per evitare di usare l'enterFrame puoi utilizzare l'evento htmlRender della classe HTML che praticamente viene richiamato ogni volta che qualcosa cambia all'interno del contenuto, direi che fa al caso tuo per quello che ti serve.

    Puoi testare quanto ho scritto con questa prova:

    Codice PHP:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml">
        <mx:TextInput id="urlTxt" width="100%" enter="html.location=urlTxt.text;" text="http://www.adobe.com/" />
        <mx:HTML id="html" width="100%" height="100%" location="http://www.adobe.com/" htmlText="{filldata()}" htmlRender="change()" />
        <mx:Button id="btn" label="add something" click="click()" />
        <mx:Script>
            <![CDATA[
            private var index:uint = 0;
            private function filldata():String {
                return "Prova0";
            }
            private function click():void {
                index++;
                html.htmlText += "
    Prova"+index;
            }
            private function change():void {
                html.verticalScrollPosition = html.maxVerticalScrollPosition;
            }
            ]]>
        </mx:Script>
    </mx:WindowedApplication>

  5. #5
    Funziona alla perfezione!

    Grazie mille =)
    Flash Developer for Rich Media
    PHP, jQuery Developer

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.