Что нового

Номер строки Combo

GUIMish

Знающий
Сообщения
122
Репутация
12
Подскажите мне как сделать так, что-бы в GUICtrlCreateCombo выберешь что-нибудь, и нажимаешь на кнопку, а в MsgBox номер выбранной строки! :-[
Если можно такое подскажите пожалуйста!
 

WSWR

AutoIT Гуру
Сообщения
941
Репутация
363
GUIMish

Код:
#include <GUIConstants.au3>
#include <GuiComboBox.au3>

Global Const $WM_COMMAND = 0x0111
Global $hCombo

GUICreate('Test', 200, 200)

$hCombo = GUICtrlCreateCombo('', 20, 20, 120, 80)
GUICtrlSetData($hCombo, 'Item1|Item2|Item3|Item4', 'Item2')
GUIRegisterMsg($WM_COMMAND, 'My_WM_COMMAND')

GUISetState()

While 1
	Switch GuiGetMsg()
		Case $GUI_EVENT_CLOSE
			Exit
	EndSwitch
WEnd

Func MY_WM_COMMAND($hWnd, $msg, $wParam, $lParam)
	Local $nNotifyCode = BitShift($wParam, 16)
	Local $nControlId = BitAND($wParam, 0xFFFF)

	If $nControlId = $hCombo Then
		Switch $nNotifyCode
			Case $CBN_EDITCHANGE, $CBN_SELCHANGE
				$index = _GUICtrlComboBox_GetCurSel($hCombo)
				MsgBox(0, 'Сообщение', 'Номер пункта: ' & $index & @CRLF & 'текст пункта: ' & GUICtrlRead($hCombo))
		EndSwitch
	EndIf
	Return $GUI_RUNDEFMSG
EndFunc   ;==>MY_WM_COMMAND
 

AZJIO

Меценат
Меценат
Сообщения
2,891
Репутация
1,195
GUIMish
Попробуй посмотреть пример в справке.
 
Автор
G

GUIMish

Знающий
Сообщения
122
Репутация
12
WSWR:
Огромное спасибо, это то что нужно!
 
Верх