Announcement

Collapse
No announcement yet.

TTreeView RightClickSelect

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TTreeView RightClickSelect

    Hallo,<BR>
    ich möchte in einem TreeView per rechter Maustaste ein PopUp Menü einblenden um eine Aktion am Element unter dem Mauszeiger zu starten. Das klappt beim TListView bestens, beim TTreeView bekomme ich in der Eigenschaft "selected" immer den letzten mit der linken Maustaste angeklickten Eintrag im TreeView geliefert, obwohl ich RightClickSelect auf true gesetzt habe. Laut Hilfe ist das auch alles was zu tun ist, stimmt aber wohl nicht so ganz!?!? Hat jemand eine Idee?? (zuerst mit Links auf den Eintrag klicken und dann mit Rechtes das Popup aufrufen will ich dem User nicht zumuten)<BR>
    Gruß Armin

  • #2
    Hallo Armin,

    hast Du´s mal mit GetNodeAt(X, Y) probiert?
    Damit bekommst du den Knoten ohne dass er ausgewählt ist. Glaub ich jedenfalls!

    Gruß Yve

    Comment


    • #3
      Hi Yves,<BR>
      Danke, klappt prima, ich musste zwar eine kleine Korrektur von (Left 6/ Top 24) an die Mauskoordinaten anbringen (obwohl alle Tops und Lefts sauber verrechnet), aber das scheint konstant zu sein.<BR>
      Gruß Armi

      Comment


      • #4
        Armini,

        TTreeView erbt von TCustomTreeView die Property RightClickSelect. Die löst Dein Problem vermutlich auch.

        Gruß,<br>
        Ja

        Comment


        • #5
          Armini,

          RightClickSelect arbeitet tatsächlich etwas seltsam. Du kannst das Problem auch lösen, wenn Du im OnPopup-Ereignis des Popup-Menüs folgende Zeile einfügst:<pre>
          Tree->Selected = Tree->Selected;
          </pre>

          ... doof, aber funktioniert irgendwie.

          Gruß,
          Ja

          Comment


          • #6
            Hallo Jan,<BR>
            stimmt, ist bissl eigenartig, aber klappt. Wie biste denn darauf gekommen? Ist mir lieber als die Geschichte mit den Koordinaten, weil der Code einfacher wird.
            <BR>Danke und Gruß, Armi

            Comment


            • #7
              Armini,

              wenn man ohne Popup-Menü rechts klickt, sieht man, wie die Auswahl kurz auf den richtigen Knoten geht, dann aber wieder auf den vorher ausgewählten zurückschnipst, wenn man die Maustaste los läßt - da liegt wohl das Problem. Den Moment der korrekten Auswahl galt es also irgendwie abzupassen. Das geht z.B. im OnPopup-Ereignis, weil das noch vor dem OnMouseUp auftritt. Warum Tree->Selected = Tree->Selected funktioniert weiß ich auch nicht. Da müßte man mal in den Quellen wühlen. Bin aber nicht sonderlich motiviert :-) ...

              Gruß,
              Ja

              Comment


              • #8
                Hi Jan,<BR><Br>
                stimmt, in den Quellen steht's mit Sicherheit drin, da sollten wir das auch lassen, hauptsache, es funktioniert :-).<P>Armi

                Comment

                Working...
                X