本帖最后由 cashiba 于 2017-4-21 06:47 编辑 #include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form = GUICreate("Form1")
$Listbox = GUICtrlCreateList("",10,10,105,160,BitOR($LBS_STANDARD, $LBS_EXTENDEDSEL))
Local $Arr=StringSplit("*|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec","|",3)
_GUICtrlListBox_BeginUpdate($Listbox)
For $i = 0 To ubound($Arr)-1
_GUICtrlListBox_AddString($Listbox,$Arr[$i])
Next
_GUICtrlListBox_EndUpdate($Listbox)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
如上代码的列表框,一手按住CTRL或Shift键后,另一手操作鼠标可以选择连续或不连续的多项。或一手鼠标拖动选择连续的几项。
但是如果想选择不连续的多项或取消已选中的几项中的某项则需要双手配合按住CTRL或Shift键才行。
如何实现:不需要一手按住CTRL或Shift键,单手鼠标操作可以选择连续或不连续的多项;点击已选中的多项中的某项,则取消选中该项,再点击,可以重新选中该项,也就是点击鼠标不会影响其它选择 |