As I said, none of those controls have any code in that GUI loop at all, they are display controls only.
I was trying to keep the code relevant, but obviously cut too much out. Here's the GUI Window code:
Func drawMainWindow()
Dim $lGuiStartTop = 200
; Create the main GUI
$mWindow = GUICreate($mTitle, $mWidth, $mHeight, $mLeft, $mTop, $WS_CAPTION)
GUISetBkColor($COL_BLACK, $mWindow)
GUICtrlSetDefColor($COL_WHITE)
; Create the language list
GUICtrlCreateLabel($LANG[45] & ":", 10, $lGuiStartTop, 150)
$lGuiStartTop = $lGuiStartTop + 20
$LANG_COMBO = GUICtrlCreateCombo("", 10, $lGuiStartTop, -1, -1, $CBS_DROPDOWNLIST)
GUICtrlSetData(-1, $mLanguageList, $mLanguage)
;GUICtrlCreateGroup("Languages", 10, $lGuiStartTop, $mWidth - 20, 150)
$lGuiStartTop = $lGuiStartTop + 30
; Create the PC location control including the directory search button
GUICtrlCreateLabel($LANG[8] & ":", 10, $lGuiStartTop, $mWidth - 130)
GUICtrlSetColor(-1, $COL_WHITE)
$VIDEO_BTN = GUICtrlCreateButton($LANG[9], $mWidth - 110, $lGuiStartTop + 3, 100, 38)
GUICtrlSetColor(-1, $COL_BLACK)
$lGuiStartTop = $lGuiStartTop + 20;
$VIDEO_DIR = GUICtrlCreateInput("C:\", 10, $lGuiStartTop, $mWidth - 130, 20)
$lGuiStartTop = $lGuiStartTop + 25;
GUICtrlSetColor(-1, $COL_BLACK)
GUICtrlSetTip(-1, $LANG[10])
; Jukebox Output Directory
GUICtrlCreateLabel($LANG[11] & ":", 10, $lGuiStartTop, $mWidth - 130)
GUICtrlSetColor(-1, $COL_WHITE)
$lGuiStartTop = $lGuiStartTop + 20
$JUKEBOX_DIR = GUICtrlCreateInput($LANG[12], 10, $lGuiStartTop, $mWidth - 130, 20, $ES_READONLY)
GUICtrlSetColor(-1, $COL_BLACK)
$lGuiStartTop = $lGuiStartTop + 30
; Shortcut check boxes
XPStyleToggle(1)
GUICtrlCreateGroup($LANG[13], 10, $lGuiStartTop, $mWidth - 130, 60)
GUICtrlSetColor(-1, $COL_WHITE)
$lGuiStartTop = $lGuiStartTop + 15
$CHK_SHORTCUT = GUICtrlCreateCheckbox($LANG[13], 20, $lGuiStartTop, $mWidth - 160, 20)
GUICtrlSetColor($CHK_SHORTCUT, $COL_WHITE)
GUICtrlSetState($CHK_SHORTCUT, $GUI_CHECKED)
$lGuiStartTop = $lGuiStartTop + 20
$CHK_DESKTOP = GUICtrlCreateCheckbox($LANG[16], 20, $lGuiStartTop, $mWidth - 160, 20)
GUICtrlSetColor($CHK_DESKTOP, $COL_WHITE)
GUICtrlSetState($CHK_DESKTOP, $GUI_CHECKED)
XPStyleToggle(0)
$lGuiStartTop = $lGuiStartTop + 35
; Create the SAVE button
$SAVE_BTN = GUICtrlCreateButton($LANG[16], 10, $lGuiStartTop, 100)
GUICtrlSetColor($SAVE_BTN, $COL_BLACK)
setButtonSave(False)
GUICtrlSetTip($SAVE_BTN, $LANG[17])
; Create the RUN button
$RUN_BTN = GUICtrlCreateButton($LANG[18], ($mWidth / 2) - 50, $lGuiStartTop, 100)
If StringLen($gACRJukeboxLocation) > 0 Then
setButtonRun(True)
Else
setButtonRun(False)
EndIf
GUICtrlSetTip($RUN_BTN, $LANG[20])
GUICtrlSetColor(-1, $COL_BLACK)
; Create the EXIT button
$EXIT_BTN = GUICtrlCreateButton($LANG[20], $mWidth - 110, $lGuiStartTop, 100)
GUICtrlSetTip(-1, $LANG[21])
GUICtrlSetColor(-1, $COL_BLACK)
$lGuiStartTop = $lGuiStartTop + 35
EndFunc ;==>drawMainWindow
This is the code for the GUIMsg loop
; Run the GUI until the dialog is closed
While True
$MSG = GUIGetMsg()
Select
Case $MSG = $SAVE_BTN
librarySave(GUICtrlRead($VIDEO_DIR), GUICtrlRead($JUKEBOX_DIR))
setButtonRun(True)
Case $MSG = $RUN_BTN
runMovieJukebox()
Case $MSG = $VIDEO_BTN
setScanDir(True)
GUICtrlSetData($JUKEBOX_DIR, calculatePath(GUICtrlRead($VIDEO_DIR)))
Case $MSG = $LANG_COMBO
$mLanguage = GUICtrlRead($LANG_COMBO)
setLanguage($mLanguage)
readLanguage()
drawMainWindow()
Case $MSG = $GUI_EVENT_CLOSE Or $MSG = $EXIT_BTN
Exit
EndSelect
WEnd
When, for example the $VIDEO_DIR is clicked on, nothing else, just clicked on, then the ComboBox is blanked.
There is no code associated with that control (when you click it) it's triggered from the $VIDEO_BTN.
This only seems to happen on Windows XP 32Bit, I've tried the same code on Windows 7 64Bit and it seems to work fine.