Veröffentlicht 8. Dezember 200915 j Hallo, ich würde gerne folgendes realisieren: In einer Treeview soll zu jedem Knoten ein Tooltip erscheinen, wenn man diesen Knoten selektiert und dann die rechte Maustaste gedrückt hält. Wenn die Maustaste losgelassen wird, soll der Tooltip wieder verschwinden. So nun das Problem: Der (die/das..) Tooltip soll im Ballon-Style erscheinen, und die "spitze" des Ballons soll genau auf dem Knoten zeigen. Ich poste mal meinen bisherigen Code, es handelt sich aber nur um ein paar schnell runtergeschriebene Zeilen: this.toolTipTreeView.InitialDelay = 0; this.toolTipTreeView.IsBalloon = true; private void treeView_MouseDown(object sender, MouseEventArgs e) { ... if (e.Button == MouseButtons.Right) { this.toolTipTreeView.ToolTipIcon = ToolTipIcon.Info; this.toolTipTreeView.ToolTipTitle = "Dateien:"; this.toolTipTreeView.Show(tmp, this.treeView, e.X, e.Y); } } Die Überprüfung, ob überhaupt ein Knoten selektiert ist usw. hab ich weggelassen, genauso wie die Behandlung was passiert wenn der linke Mauszeiger gedrückt wurde usw. Das seltsame: Bei meinem Code geht eigentlich alles wunderbar, aber erst nach dem 1. rechten Mausklick. Beim ersten Rechtsklick erscheint der Tooltip noch an einer ganz anderen Stelle im Treeview, ab dem 2. funktioniert es genau so wie ich es haben will (jeweils auf der e.X und e.Y Position). Weiss jemand woran es liegt?
9. Dezember 200915 j Die gelieferten Maus-Koordinaten - beziehen die sich auf ein Koordinatensystem innerhalb des Treeviews oder innerhalb des Forms? Und die Koordinaten innerhalb der Show Methode, Form oder TreeView? Da wird der Fehler liegen.
9. Dezember 200915 j Autor Das (für mich) seltsame ist halt: Beim ersten Rechtsklick sind beim debuggen die Koordinaten von e z.B. 10,10 -> der Tooltip wird irgendwo ganz unten angezeigt. Beim zweiten Rechtsklick auf den selben Punkt sind die Koordinaten wieder 10,10 -> der Tooltip ist aber nun an einer anderen (der richtigen) Stelle. Ich bekomme also bei 2 identischen Punkten, die ich in der Show()-Methode angebe, 2 verschiedenen Darstellungen des Tooltips. //Edit: Wenn ich in der tooltip.Show()-Methode nicht e.X/e.Y nehme, sondern feste Werte, z.B. 10,10 trittt das gleich Verhalten auf: Beim ersten Rechtsklick liegt die Toolbox noch wo ganz anders, ab dem 2. Rechtsklick liegt sie bei 10,10. Bearbeitet 9. Dezember 200915 j von blubbla
9. Dezember 200915 j Ah, das mit den festen Werten ist interessant. Sieht nach einem Bug aus, kann ich mir aber andererseits auch schlecht vorstellen bei so einer Standard-Komponente. Hast du mal gegoogelt ob jemand ähnliche Probleme hat?
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.