Ich habe Probleme mit dem Code, den ich schreibe. Ich habe eine Tabelle, in der die Mitarbeiterdetails aufgelistet sind. Ich versuche, eine E-Mail-Adresse in die Zwischenablage kopieren zu lassen, wenn Sie einen Datensatz auswählen und mit der rechten Maustaste klicken. Ich habe den folgenden Code:Wenn die Anweisung nicht funktioniert AutoIT
#include <GUIConstantsEx.au3>
#include <mssql.au3>
#include <MsgBoxConstants.au3>
#include <Array.au3>
#include <WindowsConstants.au3>
#include <AutoItConstants.au3>
global $title = "E-Mail address lookup"
global $name = InputBox($title,"Please type the name of the person you wish to find")
global $sqlCon = _MSSQL_Con("server", "username", "password", "directory-plus")
global $result = _MSSQL_GetRecord($sqlCon, "autoit_view","*", "WHERE cn LIKE '%" & StringStripWS($name,3) & "%'")
if StringLen(StringStripWS($name,3)) < 1 then
MsgBox(0, $title, "Name cannot be empty")
Else
Global $rset = UBound($result) - 1
Global $ControlID = GUICreate($title, 500, 150)
Global $idListview = GUICtrlCreateListView("Deparment|E-Mail Address|Name|Telephone Number", 10, 10, 480, 150)
for $count = 1 to $rset step 1
GUICtrlCreateListViewItem($result[$count][0] & "|" & $result[$count][2] & "|" & $result[$count][1] & "|" & $result[$count][2], $idListview)
if MouseClick($MOUSE_CLICK_RIGHT)==1 Then
ClipPut($result[$count][2])
EndIf
Next
GUISetState(@SW_SHOW)
GUISetState()
While 1
Global $Msg = GUIGetMsg()
Switch $Msg
Case -3, $ControlID
Exit
EndSwitch
WEnd
EndIf
Ich würde meine IF gedacht Anweisung innerhalb des for-Schleife den Trick tun würde, aber, wenn ich meinen Code ausführen, kopiert es nur, was in E-Mail-Adresse Spalte in der letzten Reihe ist, wenn Eigentlich möchte ich, dass Sie die E-Mail-Adresse kopieren, wenn Sie mit der rechten Maustaste auf eine bestimmte Zeile klicken, aber ich bin nicht sicher, wie es geht.