Scroll bar e finestre attive

di il
7 risposte

Scroll bar e finestre attive

Ciao a tutti, ancora alle prese con i form:
nella finestra TextBox che visualizza i miei dati vorrei inserire una scrollbar per facilitare la lettura dei dati, se inserisco una scrollbar o imposto l'autoscroll con VStudio comunque il comando è slegato dallo scroll della TextBox, le ho provate tutte fuorchè quella giusta, si vede.
Qualcuno ha già affrontato il problema?
Finestre attive:
finalmente creo e disegno come desidero io, se però voglio aggiungere una curva in una finestra già creata coem faccio?
Primo problema: assicurarsi che la finestra sia attiva,
ho provato con

foreach (Form form in this.MdiChildren)
if ( form.Text==string titolo)
form.Activate;

ma non risponde. Ho anche provato ad inserire un controllo del titolo della finestra attiva in quel momento e se non è quella giusta crea un MessageBox e chiede all'utente di selezionarla manualmente. Ancora nisba
Se nel frattempo risolvo ve lo scrivo.
Intanto Grazie

"Could be worse" -"Perhaps?"
"Could be raining!"

7 Risposte

  • Re: Scroll bar e finestre attive

    Per la TextBox ti suggerirei di utilizzare la proprietà ScrollBars() che attiva le barre di scorrimento, congiuntamente alla proprietà WordWrap() nel caso che le linee di testo siano superiori alla larghezza della TextBox.
    Per disegnare la tua curva una volta creata la form, di cui hai il riferimento, devi ottenere l'oggetto Graphics del form, di conseguneza tramite questo disegni.
    Ovviamente dovrai gestire il ridisegno di questa curva nell'evento Paint del Form stesso.
    In che senso non risponde?

    Ciao e Buone Feste.


    SuperCap



    (Le risposte che lascio sono limitate alle mie conoscenze sull'argomento trattato. Quindi potrei anche sbagliare!)
  • Re: Scroll bar e finestre attive

    Non risponde nel senso che se metto o meno quelle istruzioni non cambia nulla, , io creo due finestre dello stesso tipo ma con curve diverse e dovrei tracciare una curva sovrapposta solo in una di queste due, una ben precisa, per questo devo essere sicuro che sia selezionata. Quanto poi a ridisegnare questo è già più "semplice"

    "Could be worse" -"Perhaps?"
    "Could be raining!"
  • Re: Scroll bar e finestre attive

    Vuoi dire che la finestra MDI attiva continua a rimanere attiva e l'altra (se deve diventare attiva) non lo diventa?
    C'è qualcosa che mi sfugge... accidenti.
    Hai provato ad utilizzare il metodo Select del form MDI?

    Ciao.

    <BLOCKQUOTE id=quote><!--<font size= face="" id=quote>-->quote:<hr height=1 noshade id=quote>
    Non risponde nel senso che se metto o meno quelle istruzioni non cambia nulla, , io creo due finestre dello stesso tipo ma con curve diverse e dovrei tracciare una curva sovrapposta solo in una di queste due, una ben precisa, per questo devo essere sicuro che sia selezionata. Quanto poi a ridisegnare questo è già più "semplice"

    "Could be worse" -"Perhaps?"
    "Could be raining!"
    <hr height=1 noshade id=quote></BLOCKQUOTE id=quote><!--</font id=quote><font face="" size= id=quote>-->

    SuperCap



    (Le risposte che lascio sono limitate alle mie conoscenze sull'argomento trattato. Quindi potrei anche sbagliare!)
  • Re: Scroll bar e finestre attive

    <BLOCKQUOTE id=quote><!--<font size= face="" id=quote>-->quote:<hr height=1 noshade id=quote>
    Vuoi dire che la finestra MDI attiva continua a rimanere attiva e l'altra (se deve diventare attiva) non lo diventa?
    C'è qualcosa che mi sfugge... accidenti.
    Hai provato ad utilizzare il metodo Select del form MDI?

    Ciao.

    SuperCap



    (Le risposte che lascio sono limitate alle mie conoscenze sull'argomento trattato. Quindi potrei anche sbagliare!)
    <hr height=1 noshade id=quote></BLOCKQUOTE id=quote><!--</font id=quote><font face="" size= id=quote>-->
    Esatto, proprio così. Il metodo select non l'ho ancora provato, ma tenterò.

    "Could be worse" -"Perhaps?"
    "Could be raining!"
  • Re: Scroll bar e finestre attive

    Rileggendo tutte le domende e rispodte della discussione ho notato due particolari: io non creo un oggetto graphics, dall'evento PaintEventArg e generato io digito

    e.Graphics.DrawLines();
    e lui disegna. Hai menzionato il rivchiamo dell'oggetto graphics,
    questo vuol dire che io nel form devo dichiarare all'inizio

    Graphics g = this.createGraphics();

    e poi fare riferimento sempre a "g" se non ho capito male.
    Non ho ancora dato un'occhiata al metodo Select() che hai menzionato ma ho già una curiosità: con Select presumo di dover indicare il nome del form da attivare, ma questo nome è la stringa che appare nella barra del titolo? Se è così allora avrebbe dovuto funzionare già il primo metodo usato ( vedi domanda iniziale) altrimenti ti specifico che io creo per ogni documento 3 form di due tipi diversi, quello in cui scrivo i dati iniziali e i due in cui traccio le linee. Io devo attivare uno di questi due.

    "Could be worse" -"Perhaps?"
    "Could be raining!"
  • Re: Scroll bar e finestre attive

    Hai solo due modi per ottenere un oggetto Graphics:
    1) dall'argomento "e" passato dall'evento Paint.
    2) tramite il metodo CreateGraphics del form o del controllo in cui vuoi disegnare.

    A mio avviso devi dichiarare ed istanziare l'oggetto Graphics quando ti serve e rilasciare subito le risorse, tramite Dispose, quando non ti serve più.

    Quando hai ottenuto il riferimento al form che ti interessa, chiami il metodo Select(), es: formMDI1.Select().

    Ciao.

    Buone Feste.

    SuperCap



    (Le risposte che lascio sono limitate alle mie conoscenze sull'argomento trattato. Quindi potrei anche sbagliare!)
  • Re: Scroll bar e finestre attive

    Grazie per l'opzione Scrollbar, non ho idea di come mi sia sfuggita, eppure mi sembrava di aver percorso tutte le opzioni prima di ricorrere al forum...

    "Could be worse" -"Perhaps?"
    "Could be raining!"
Devi accedere o registrarti per scrivere nel forum
7 risposte