Tooltip auf ListView :)

  • Hi an alle!

    Wie bekomme ich Tooltips auf die Inhalte einer ListView.... also nicht die ListView selber?

    mal n bissl bezogeneer auf mein script...

    ich hab ne 2-spaltige listeview in der alle pcs der domäne mit kommentaren stehen! ich hätte jetzt gerne die möglichkeit über ein tooltip beispielsweiße die ip des jeweiligen hosts anzeigen zu lassen!

    greetz oli

    • Offizieller Beitrag

    Ich glaube es gibt die Möglichkeit durch MouseHoover-Effekt nach festgelegter Zeitspanne, den unter der Maus liegenden Eintrag zu aktivieren.
    Somit fragst du den Index dieses Eintrags ab und mit dem Index kannst du den Inhalt auslesen - weiterverarbeiten und an den Tooltip übergeben.

    EDIT:
    MouseHoover hab ich jetzt nicht gefunden. Aber ich hatte sowas schonmal hier gemacht. Schau dir mal die Funktion 'ListClick( )' an. Dazu mußt du aber im OnEvent-Modus arbeiten.

  • ok aber blicken tu ich ned was du da gemacht hast!

    [autoit]

    _GUICtrlListViewSetHoverTime($listview, 1)

    [/autoit]

    diesen befehl benutz ich grad um automatisch wenn ich drüberfahre mir das ding markiert wird... hab da doch bestimmt nen rückgabewert mit dem ich das machen kann oder?


    greetz

    • Offizieller Beitrag

    Das hatte ich gemeint.

    [autoit]

    _GUICtrlListViewSetHoverTime($listview, 1000)

    [/autoit]

    Bedeutet: Nach 1 s (1000 ms) wird der unter dem Mauszeiger befindliche Eintrag ausgewählt (als ob du ihn anklickst).

    Den Inhalt des Eintrags kannst du jetzt so auslesen:

    [autoit]

    $Inhalt = _GUICtrlListViewGetItemText($listview, -1, $SpaltenIndex) ; $SpaltenIndex ist 0-basiert; also Spalte 1 = 0, Spalte 2 = 1, usw.

    [/autoit]

    Zu beachten:
    The hover time only affects list-view controls that have the
    $LVS_EX_TRACKSELECT, $LVS_EX_ONECLICKACTIVATE, or
    $LVS_EX_TWOCLICKACTIVATE extended list-view style

  • bwkomm die einzelnen zeilen nich markiert! warum auch immer... ich fahr drüber und es passiert nix!

    [autoit]


    $listview=GUICtrlCreateListView("Rechnername|Kommentar", 80, 170, 256, 250, $LVS_EX_ONECLICKACTIVATE)
    Dim $B_DESCENDING[_GUICtrlListViewGetSubItemsCount($listview) ]
    _GUICtrlListViewSetColumnWidth($listview, 1, $LVSCW_AUTOSIZE)
    For $i=0 To UBound($s_Servernames) - 1
    $listitem=GUICtrlCreateListViewItem($s_Servernames[$i] & '|' & $s_Comments[$i], $listview)
    Next
    _GUICtrlListViewSetHoverTime($listview, -1)

    [/autoit]


    was mach ich falsch????

    greetz

    • Offizieller Beitrag
    [autoit]

    $listview=GUICtrlCreateListView("Rechnername|Kommentar", 80, 170, 256, 250, $LVS_EX_ONECLICKACTIVATE)

    [/autoit]

    Das ist 'extended' Style. Also:

    [autoit]

    $listview=GUICtrlCreateListView("Rechnername|Kommentar", 80, 170, 256, 250, -1, $LVS_EX_ONECLICKACTIVATE)

    [/autoit]
  • wenn ichs so reinschreibe bringt er mir nen fehler in der nächsten zeile!

    (117) : ==> Array variable subscript badly formatted.:

    Dim $B_DESCENDING[_GUICtrlListViewGetSubItemsCount($listview) ]
    Dim $B_DESCENDING[^ ERROR

    aber das passt doch????

    Einmal editiert, zuletzt von oliverh (12. April 2007 um 14:18)

  • ja was heißt net view script... das is nur ne kleine unterfunktion meines ganzen tools! gibt n admin tool für die arbeit... hat verschiedene netzwerkfunktionen wie ping und all son kruscht.... ip änderungen und all sowas... und noch ne vnc integrierung... das heißt schnapp dir en host aus der net view admin passwort eingeben... der user bekommt ne meldung (natürlich alles schön datenschutzkonform usw.) und connected dann auf den admin pc... hört sich n bissl kompliziert an is es auch :D

    greetz oli

  • hab jetzt n problem das das alles schön funzt mit dem tooltip aber ich hab des über die markierung gesteuert! und sobald ich aus der listview mit der maus rausfahre is der tip immer noch dran weil sich die markierung ja nich aufhebt... wie könnt ich das noch machen???