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

    [delphi]treeview

    E' possibile usare il controllo treeview come menù di navigazione in modo da poter visualizzare in una webbrowser adiacente (nello stesso form) differenti pagine .htm?
    Temo che il controllo menzionato non sia troppo adatto allo scopo e per giunta sia piuttosto complicato da usare (dopo aver fatto ricerche in internet). Potreste darmi un consiglio?
    Grazie!

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,301
    E' possibile: è sufficiente inserire i nodi di cui si vuole disporre nel controllo TTreeView e intercettare l'evento relativo al clic su uno dei nodi; in base al nodo selezionato, si indica al controllo WebBrowser il percorso della pagina a cui navigare.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    codice:
    procedure TformTesto.TreeView1Click(Sender: TObject);
    var tnode: TTreeNode;
    begin
      tnode := TreeView1.Selected;
      if tnode.selected then
      formIndice.show;
    end;
    Come posso in questo codice inserire il riferimento ad uno specifico nodo dell'albero?

  4. #4
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,301
    Originariamente inviato da vicky
    codice:
    procedure TformTesto.TreeView1Click(Sender: TObject);
    var tnode: TTreeNode;
    begin
      tnode := TreeView1.Selected;
      if tnode.selected then
      formIndice.show;
    end;
    Come posso in questo codice inserire il riferimento ad uno specifico nodo dell'albero?
    L'oggetto TTreeNode restituito dalla proprietà Selected del controllo TTreeView rappresenta, come suggerisce il nome, il riferimento all'oggetto corrispondente il nodo selezionato.

    Puoi ispezionare le proprietà del nodo, come il testo associato (proprietà Text) oppure l'indice (proprietà Index); in sostanza, devi individuare un metodo per identificare il nodo selezionato e, tramite un costrutto if nel codice, richiamare la pagina che intendi associare al nodo stesso.

    A dirla tutta, ci sono anche soluzioni più pulite, come creare un discendente della classe TTreeNode, ma sarebbe complesse da spiegare per chi non padroneggia la programmazione ad oggetti e troverebbe contorto la soluzione rispetto all'uso che se ne deve fare.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  5. #5
    e se devo ispezionare un sotto-nodo?

  6. #6
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,301
    Originariamente inviato da vicky
    e se devo ispezionare un sotto-nodo?
    Il sottonodo sarà sempre restituito dalla proprietà Selected, che consente di ottenere il riferimento al nodo selezionato, indipendentemente dal suo livello.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

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 © 2024 vBulletin Solutions, Inc. All rights reserved.