Здравствуйте.
Использую AutoIt v3.3.8.1
Хочу реализовать следующее.
На появляющейся форме расставляются элементы:
Если элементов максимальное количество то расставляю так:
Эта форма для задания настроек. Следующая форма будет считывать настройки и отрисовывать заданные элементы. Она так же рассчитана на максимальное количество элементов.
НО, это основной вопрос. Если в настройках задать меньшее количество элементов то получается не симметричное расположение элементов на основной форме.
Подскажите как реализовать идею. Может уже есть готовые решения.
Хотелось бы, что-бы при исключении элемента следующий элемент наследовал его координаты.
Надеюсь понятно изложил суть.
Использую AutoIt v3.3.8.1
Хочу реализовать следующее.
На появляющейся форме расставляются элементы:
Код:
GUICtrlCreateLabel
GUICtrlCreateCheckbox
Если элементов максимальное количество то расставляю так:
Код:
#include <GUIConstantsEx.au3>
$hGUISINI = GUICreate("Создание файла настроек", 200, 200, -1, -1) ; Создаёт окно в центре экрана
$nCh1 = GUICtrlCreateCheckbox("FlashPlayerActivX", 1, 1, 120, 20)
$nCh2 = GUICtrlCreateCheckbox("FlashPlayerPlugin", -1, -1, 120, 20)
$nCh3 = GUICtrlCreateCheckbox("ShockWaveFlash", 1, 41, 120, 20)
$nCh4 = GUICtrlCreateCheckbox("AdobeAIR", 1, 61, 120, 20)
$nCh5 = GUICtrlCreateCheckbox("Silverlight", 1, 81, 120, 20)
$nCh6 = GUICtrlCreateCheckbox("JavaSE", 1, 101, 120, 20)
$nCh7 = GUICtrlCreateCheckbox("QuickTime", 1, 121, 120, 20)
$nCh8 = GUICtrlCreateCheckbox("RealPlayer", 1, 141, 120, 20)
$hBatCheckINI = GUICtrlCreateButton("Создать файл настроек", 35, 161)
GUISetState(@SW_SHOW, $hGUISINI)
While 1
Switch GUIGetMsg()
Case -3
Exit
GUIDelete($hGUISINI)
Case $hBatCheckINI
If BitAND(GUICtrlRead($nCh1), $GUI_CHECKED) Then
IniWrite(@ScriptDir&'\settings.ini', "SetCheckParam", "FlashPlayerActivX", "1")
EndIf
If BitAND(GUICtrlRead($nCh2), $GUI_CHECKED) Then
IniWrite(@ScriptDir&'\settings.ini', "SetCheckParam", "FlashPlayerPlugin", "1")
EndIf
If BitAND(GUICtrlRead($nCh3), $GUI_CHECKED) Then
IniWrite(@ScriptDir&'\settings.ini', "SetCheckParam", "ShockWaveFlash", "1")
EndIf
If BitAND(GUICtrlRead($nCh4), $GUI_CHECKED) Then
IniWrite(@ScriptDir&'\settings.ini', "SetCheckParam", "AdobeAIR", "1")
EndIf
If BitAND(GUICtrlRead($nCh5), $GUI_CHECKED) Then
IniWrite(@ScriptDir&'\settings.ini', "SetCheckParam", "Silverlight", "1")
EndIf
If BitAND(GUICtrlRead($nCh6), $GUI_CHECKED) Then
IniWrite(@ScriptDir&'\settings.ini', "SetCheckParam", "JavaSE", "1")
EndIf
If BitAND(GUICtrlRead($nCh7), $GUI_CHECKED) Then
IniWrite(@ScriptDir&'\settings.ini', "SetCheckParam", "QuickTime", "1")
EndIf
If BitAND(GUICtrlRead($nCh8), $GUI_CHECKED) Then
IniWrite(@ScriptDir&'\settings.ini', "SetCheckParam", "RealPlayer", "1")
EndIf
Exit
GUIDelete($hGUISINI)
EndSwitch
WEnd
Эта форма для задания настроек. Следующая форма будет считывать настройки и отрисовывать заданные элементы. Она так же рассчитана на максимальное количество элементов.
НО, это основной вопрос. Если в настройках задать меньшее количество элементов то получается не симметричное расположение элементов на основной форме.
Подскажите как реализовать идею. Может уже есть готовые решения.
Хотелось бы, что-бы при исключении элемента следующий элемент наследовал его координаты.
Надеюсь понятно изложил суть.