pintas Posted June 9, 2017 Share Posted June 9, 2017 (edited) The combo content below are the files from a network folder. I also have a button that moves the combo selected entry (file) to another place, and then i need to update the combo to remove that particular entry. I've tried updating the combo values, and even deleting the combo and creating it again, but it picks up the same values as before, no matter what i do... The entries (file names) are not always the same, so i can't know the index of the file in the combo to properly remove it. So _GUICtrlComboBox_DeleteString doesn't help. Any ideas on how i can do this? $Pasta = GUICtrlCreateCombo("Selecionar", 8, 16, 153, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL)) Global $arquivo = _FileListToArray('\\192.168.10.1\Dir\') Func PopularPasta() For $i = 1 To UBound($arquivo) - 1 GUICtrlSetData($Pasta, $arquivo[$i]) Next EndFunc Edited June 12, 2017 by pintas Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted June 11, 2017 Moderators Share Posted June 11, 2017 pintas, This simple example works for me: expandcollapse popup#include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> #include <Array.au3> Global $aList[5] = [1, 2, 3, 4, 5] $hGUI = GUICreate("Test", 500, 500) $cCombo = GUICtrlCreateCombo("", 8, 16, 153, 25) ; The required styles are included by default _FillCombo() GUISetState() While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE Exit Case $cCombo _ActionCombo(GUICtrlRead($cCombo)) EndSwitch WEnd Func _ActionCombo($sChoice) ; Get index of choice in array $iIndex = _ArraySearch($aList, $sChoice) ; And delete it _ArrayDelete($aList, $iIndex) ; Refill combo _FillCombo() MsgBox($MB_SYSTEMMODAL, "Combo reloaded", "You selected " & $sChoice & @CRLF & " which has now been removed from the combo") EndFunc Func _FillCombo() $sData = "" For $i = 0 To UBound($aList) - 1 $sData &= "|" & $aList[$i] Next GUICtrlSetData($cCombo, $sData) EndFunc Much easier to work with the original array rather than the combo. M23 Xandy 1 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
pintas Posted June 12, 2017 Author Share Posted June 12, 2017 (edited) On 2017-6-11 at 4:32 AM, Melba23 said: pintas, This simple example works for me: Much easier to work with the original array rather than the combo. M23 Fantastic, Thank you. However, if i replace the: Global $aList[5] = [1, 2, 3, 4, 5] with: Global $aList = _FileListToArray('\\192.168.10.1\Dir\') I get the item count in the first combo position. I can use _ArrayDelete($aList, 0) and it will work the first time i run the gui, but after it deletes the selected combo value and refreshes, some items are missing from the combo. I'm not sure why this happens. Edited June 12, 2017 by pintas Nevermind. Got it working... :) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now