TimoXa_Skot
![](http://forum.ru-board.com/board/avatars/russia.gif)
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Возник небольшой вопрос... Создаю окно в нем несколько lable'лов, input'ов и 2 combobox'а. При выборе одного из значений combobox форма увеличивается в размере и добавляется еще несколько lable'лов и input'ов. Теперь внимание проблема: Не возможно вписать в старые input'ы значения...хотя по кнопке Tab в них переходит курсор и в этом случае ввод данных возможен... Прекрасно понимаю, что нужно пересоздать форму, НО не знаю как Вот код формы... Код: Func Addname() GUISetState(@SW_DISABLE, $body) global $addingwight=200, $addinghight=330 $adding = GUICreate("Добавление", $addingwight, $addinghight, -1, -1, -1, -1) GuiSetState(@SW_SHOW, $adding) GUISetOnEvent($GUI_EVENT_CLOSE, "WINDadding") $name0=GUICtrlCreateLabel("Наименование", 15, 48) GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP) $name = GUICtrlCreateInput("", 10, 63, 180, 20) GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP+$GUI_DOCKHEIGHT) $proizvod0=GUICtrlCreateLabel("Производитель", 15, 92) GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP) $proizvod = GUICtrlCreateCombo("", 10, 107, 180, 20) GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP) GUICtrlSetState($proizvod, BitOr($GUI_DROPACCEPTED, $WS_EX_ACCEPTFILES)) $rozn0=GUICtrlCreateLabel("Розница", 15, 134) GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP) $rozn = GUICtrlCreateInput("", 10, 148, 180, 20) GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP+$GUI_DOCKHEIGHT) $sebes0=GUICtrlCreateLabel("Себестоимость", 15, 176) GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP) $sebes = GUICtrlCreateInput("", 10, 190, 180, 20) GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP+$GUI_DOCKHEIGHT) $comment0=GUICtrlCreateLabel("Комментарий(опционально)", 15, 217) GUICtrlSetResizing(-1, $GUI_DOCKBOTTOM + $GUI_DOCKSIZE + $GUI_DOCKHCENTER) $comment = GUICtrlCreateInput("", 10, 232, 180, 60, $ES_MULTILINE + $ES_AUTOVSCROLL) GUICtrlSetResizing(-1, $GUI_DOCKBOTTOM + $GUI_DOCKHEIGHT) $Create = GUICtrlCreateButton("Создать запись", 12, 299, 100, 24, $BS_DEFPUSHBUTTON) GUICtrlSetResizing(-1, $GUI_DOCKBOTTOM + $GUI_DOCKSIZE + $GUI_DOCKHCENTER) GUICtrlSetOnEvent(-1, "NewItem") $Cancel = GUICtrlCreateButton("Отмена", 130, 299, 50, 24) GUICtrlSetResizing(-1, $GUI_DOCKBOTTOM + $GUI_DOCKSIZE + $GUI_DOCKHCENTER) GUICtrlSetOnEvent(-1, "WINDadding") $razd = GUICtrlCreateCombo("", 20, 16, 160, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL)) GUICtrlSetResizing(-1, $GUI_DOCKLEFT + $GUI_DOCKTOP+$GUI_DOCKHEIGHT) GUICtrlSetData(-1, "Котлы|Горелки|Дополнительно|Монтаж|Радиаторное отопление|Напольное отопление|Напольное отопление с ал пластинами", "Котлы") GUIRegisterMsg($WM_COMMAND, "WM_COMMAND") EndFunc ;==>Addname Func combox() If GUICtrlRead($razd )="Котлы" Then $aBkGUI_Pos = WinGetPos($adding) WinMove($adding, "", $aBkGUI_Pos[0],$aBkGUI_Pos[1],$aBkGUI_Pos[2]+50, $aBkGUI_Pos[3]+168,1) GUICtrlCreateLabel("Мощность на дизельном/газовом топливе", 15, 218) $gaz = GUICtrlCreateInput("", 10, 232, 225, 20) GUICtrlCreateLabel("Мощность на твердом топливе", 15, 260) $tvtop = GUICtrlCreateInput("", 10, 274, 225, 20) GUICtrlCreateLabel("Мощность на электрическом топливе", 15, 302) $elect = GUICtrlCreateInput("", 10, 316, 225, 20) GUICtrlCreateLabel("Производительность змеевика ГВС", 15, 344) $gvs= GUICtrlCreateInput("", 10, 358, 225, 20) EndIf EndFunc Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam) #forceref $hWnd, $iMsg Local $hWndFrom, $iIDFrom, $iCode, $hWndCombo If Not IsHWnd($proizvod) Then $hWndCombo = GUICtrlGetHandle($proizvod) If Not IsHWnd($razd) Then $hWndCombo1 = GUICtrlGetHandle($razd) $hWndFrom = $ilParam $iIDFrom = BitAND($iwParam, 0xFFFF) $iCode = BitShift($iwParam, 16) Switch $hWndFrom Case $proizvod, $hWndCombo Switch $iCode Case $CBN_EDITCHANGE _Edit_Changed() EndSwitch Case $razd, $hWndCombo1 Switch $iCode Case $CBN_SELCHANGE combox() EndSwitch EndSwitch Return $GUI_RUNDEFMSG EndFunc ;==>WM_COMMAND Func _Edit_Changed() _GUICtrlComboBox_AutoComplete($proizvod) EndFunc ;==>_Edit_Changed |
|