bogomolv
Попробуйте, пожалуйста, запустить мой скрипт - всё наглядно увидите. ;-)
Цитата:
;Назначение этих двух строчек я не понимаю...
Ну, так не ставь их!
|
Ну так не работает без них! :-)
Ладно - попробую ещё понятнее объяснить:
Как видно по моему скрипту - есть одна часть, которая выполняется, и вторая - закоментированная. Это я думаю видно и понятно. Первая (незакоментированная) часть в зависимости от того, какая из RadioButton выбрана, выделяет три левых или правых чекбокса - то же вроде должно быть понятно. Вторая, закоментированная, часть показывает, что с выделенными чекбоксами делать. И если запустить скрипт в том виде, как у меня он дан, можно увидеть - что первая часть (отметка чекбоксов) работает. Если закоментитровать первую часть, и раскоментировать вторую - видим что и вторая часть так же выполняет свою функцию, что на неё возложена.
Теперь немного понятнее стало какие части и что нужно совмещать?
Может и не так, как у меня записано, принцип того, что должно получится, ясен?
Добавлено:
Всё, вопрос снимается - разобрался, как это всё работает (вроде-как).
Видать жара и недосып дают о себе знать ;-) Вот что в итоге вышло:
Код:

#include <GUIConstants.au3>
GUICreate("Учусь Работать С Чекбоксами", 400, 300)
$checkCN1 = GUICtrlCreateCheckbox ("CHECKBOX 1", 10, 10, 120, 20)
$checkCN2 = GUICtrlCreateCheckbox ("CHECKBOX 2", 10, 30, 120, 20)
$checkCN3 = GUICtrlCreateCheckbox ("CHECKBOX 3", 10, 50, 120, 20)
$checkCN4 = GUICtrlCreateCheckbox ("CHECKBOX 4", 130, 10, 230, 20)
$checkCN5 = GUICtrlCreateCheckbox ("CHECKBOX 5", 130, 30, 230, 20)
$checkCN6 = GUICtrlCreateCheckbox ("CHECKBOX 6", 130, 50, 230, 20)
$Start = GUICtrlCreateButton("Выполнить", 10, 100, 120, 20)
$Close = GUICtrlCreateButton("Выход", 10, 120, 120, 20)
$button_1 = GUICtrlCreateButton ("Кнопка Выбора ", 10, 150, 120, 20)
$group_1 = GUICtrlCreateGroup ("Группа", 5, 175, 120, 95)
GUIStartGroup()
$radio_1 = GUICtrlCreateRadio ("Первая Колонка", 10, 190, 120, 20)
$radio_2 = GUICtrlCreateRadio ("Вторая Колонка", 10, 205, 120, 20)
$radioval1 = 0 ; We will assume 0 = first radio button selected, 2 = last button
$radioval2 = 2
GUISetState ()
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE Or $msg = $Close
Exit
Case $msg = $GUI_EVENT_MINIMIZE
MsgBox(0,"", "Dialog minimized",2)
Case $msg = $GUI_EVENT_MAXIMIZE
MsgBox(0,"", "Dialog restored",2)
Case $msg = $button_1
if $radioval1 = 0 then
If GUICtrlRead($checkCN1)=$GUI_CHECKED Then
GUICtrlSetState($checkCN1,$GUI_UNCHECKED)
Else
GUICtrlSetState($checkCN1,$GUI_CHECKED)
EndIF
If GUICtrlRead($checkCN2)=$GUI_CHECKED Then
GUICtrlSetState($checkCN2,$GUI_UNCHECKED)
Else
GUICtrlSetState($checkCN2,$GUI_CHECKED)
EndIF
If GUICtrlRead($checkCN3)=$GUI_CHECKED Then
GUICtrlSetState($checkCN3,$GUI_UNCHECKED)
Else
GUICtrlSetState($checkCN3,$GUI_CHECKED)
EndIF
EndIf
if $radioval1 = 1 then
If GUICtrlRead($checkCN4)=$GUI_CHECKED Then
GUICtrlSetState($checkCN4,$GUI_UNCHECKED)
Else
GUICtrlSetState($checkCN4,$GUI_CHECKED)
EndIF
If GUICtrlRead($checkCN5)=$GUI_CHECKED Then
GUICtrlSetState($checkCN5,$GUI_UNCHECKED)
Else
GUICtrlSetState($checkCN5,$GUI_CHECKED)
EndIF
If GUICtrlRead($checkCN6)=$GUI_CHECKED Then
GUICtrlSetState($checkCN6,$GUI_UNCHECKED)
Else
GUICtrlSetState($checkCN6,$GUI_CHECKED)
EndIF
EndIf
; Назначение этих двух строчек я не понимаю...
Case $msg >= $radio_1 AND $msg <= $radio_2
$radioval1 = $msg - $radio_1
Case $msg = $Start
If GUICtrlRead($checkCN1) = 1 Then
MsgBox(0,"Установка","Чекбокс 1",1)
EndIf
If GUICtrlRead($checkCN2) = 1 Then
MsgBox(0,"Установка","Чекбокс 2",1)
EndIf
If GUICtrlRead($checkCN3) = 1 Then
MsgBox(0,"Установка","Чекбокс 3",1)
EndIf
If GUICtrlRead($checkCN4) = 1 Then
MsgBox(0,"Установка","Чекбокс 4",1)
EndIf
If GUICtrlRead($checkCN5) = 1 Then
MsgBox(0,"Установка","Чекбокс 5",1)
EndIf
If GUICtrlRead($checkCN6) = 1 Then
MsgBox(0,"Установка","Чекбокс 6",1)
EndIf
EndSelect
WEnd