Тема: AHK: арифметические операции и повторение GUI инпутов в Tab-ах
Здравствуйте, появилась потребность в частом вычислении чисел, но так как процес длинный решил упростить.
1. Проблема первая в том что есть 10 вкладлок и в каждой вкладке должно быть 86 инпутов и для каждего прописать логику будет долго сложно и есть возможность ошибки. Предполагаю можно умножить инпуты по вкладкам(но не знаю как).
2. Как реализовать часть арифметического действия, но сначало поясню логику:
инпуты Name1\Name2 для того что бы вконце не запутаться
инпуты sam1\sam2 для введения чисел
строки от a1-a40(почему 40? потому что больше не будет, но может быть и меньше) с инпутами 1\2 (в дальнейшем A1\A2 D1\D2 )
Endsum1\Endsum2 для вывода результатов
calculate кнопка после нажатия которой выводиться расчет цыфр
Сам процесс:
Ввожу название в Name1\Name2
ввожу 1.3 в sam1 и 1.2 в sam2
ввожу цыфры в инпуты от a1 до a5 в столбец А1 ввожу 1 0 чередуя их через один, а в столбец D1 0 1 чередуя через один. Такое же делаю для правого столбцев А2 и D2
Пример:
A1 D1 D2 A2 (да, сначало D )
a1 1 0 1 0
a2 0 1 0 1
a3 1 0 1 0
a4 0 1 0 1
a5 1 0 1 0
P.S. 1 и 0 чисто для примера, там будут разные цифры (0 тоже).
После нажатия кнопки calculate происходит процесс:
(a1,A1+a2,A1+a3,A1+a4,A1+a5,A1:(на количество заполненых полей) 5): (на число с инпута sam1) тоесть (1+0+1+0+1:5):1.3 = q1
(a1,D2+a2,D2+a3,D2+a4,D2+a5,D2:(на количество заполненых полей) 5): (на число с инпута sam1) тоесть (1+0+1+0+1:5):1.3 = q2
q1*q2*sam1= name1 - Endsum1
(a1,D1+a2,D1+a3,D1+a4,D1+a5,D1:(на количество заполненых полей) 5): (на число с инпута sam2) тоесть (1+0+1+0+1:10):1.3 = w1
(a1,A2+a2,A2+a3,A2+a4,A2+a5,A2:(на количество заполненых полей) 5): (на число с инпута sam2) тоесть (1+0+1+0+1:10):1.3 = w2
w1*w2*sam2= name2 - Endsum2
Проблема в том что бы оно всегда додавало только с тех инпутов в которых введено число и : на то же количество(в даном примере на 5), заполнено может быть как и 2 строки так и все 40.
Так как в AHK я не особо умен, то не знаю как реализовать функционал, если можно то наведите пример как реализовать:
(a1,A1+a2,A1+a3,A1+a4,A1+a5,A1:(на количество заполненых полей) 5): (на число с инпута sam1) тоесть (1+0+1+0+1:5):1.3 = q1
(a1,D2+a2,D2+a3,D2+a4,D2+a5,D2:(на количество заполненых полей) 5): (на число с инпута sam1) тоесть (1+0+1+0+1:5):1.3 = q2
q1*q2*sam1=Endsum1
Вот и сам GUI:
Gui, Add, Tab, x2 y-1 w960 h630 , Tab1|Tab2|Tab3|Tab4|tab5|tab6|tab7|tab8|tab9|tab10|pals
Gui, Tab, Tab1
Gui, Add, Edit, x32 y39 w340 h20 , name1
Gui, Add, Edit, x572 y39 w360 h20 , name2
Gui, Add, Edit, x32 y69 w340 h20 , sam1
Gui, Add, Edit, x572 y69 w360 h20 , sam2
Gui, Add, Edit, x52 y129 w30 h20 , 1
Gui, Add, Edit, x92 y129 w30 h20 , 2
Gui, Add, Edit, x52 y159 w30 h20 , 1
Gui, Add, Edit, x92 y159 w30 h20 , 2
Gui, Add, Edit, x52 y189 w30 h20 , 1
Gui, Add, Edit, x92 y189 w30 h20 , 2
Gui, Add, Edit, x52 y219 w30 h20 , 1
Gui, Add, Edit, x92 y219 w30 h20 , 2
Gui, Add, Edit, x52 y249 w30 h20 , 1
Gui, Add, Edit, x92 y249 w30 h20 , 2
Gui, Add, Edit, x52 y279 w30 h20 , 1
Gui, Add, Edit, x92 y279 w30 h20 , 2
Gui, Add, Edit, x52 y309 w30 h20 , 1
Gui, Add, Edit, x92 y309 w30 h20 , 2
Gui, Add, Edit, x52 y339 w30 h20 , 1
Gui, Add, Edit, x92 y339 w30 h20 , 2
Gui, Add, Edit, x52 y369 w30 h20 , 1
Gui, Add, Edit, x92 y369 w30 h20 , 2
Gui, Add, Edit, x52 y399 w30 h20 , 1
Gui, Add, Edit, x92 y399 w30 h20 , 2
Gui, Add, Edit, x52 y429 w30 h20 , 1
Gui, Add, Edit, x92 y429 w30 h20 , 2
Gui, Add, Edit, x52 y459 w30 h20 , 1
Gui, Add, Edit, x92 y459 w30 h20 , 2
Gui, Add, Edit, x52 y489 w30 h20 , 1
Gui, Add, Edit, x92 y489 w30 h20 , 2
Gui, Add, Edit, x52 y519 w30 h20 , 1
Gui, Add, Edit, x92 y519 w30 h20 , 2
Gui, Add, Edit, x52 y549 w30 h20 , 1
Gui, Add, Edit, x92 y549 w30 h20 , 2
Gui, Add, Edit, x182 y129 w30 h20 , 1
Gui, Add, Edit, x222 y129 w30 h20 , 2
Gui, Add, Edit, x182 y159 w30 h20 , 1
Gui, Add, Edit, x222 y159 w30 h20 , 2
Gui, Add, Edit, x182 y189 w30 h20 , 1
Gui, Add, Edit, x222 y189 w30 h20 , 2
Gui, Add, Edit, x182 y219 w30 h20 , 1
Gui, Add, Edit, x222 y219 w30 h20 , 2
Gui, Add, Edit, x182 y249 w30 h20 , 1
Gui, Add, Edit, x222 y249 w30 h20 , 2
Gui, Add, Edit, x182 y279 w30 h20 , 1
Gui, Add, Edit, x222 y279 w30 h20 , 2
Gui, Add, Edit, x182 y309 w30 h20 , 1
Gui, Add, Edit, x222 y309 w30 h20 , 2
Gui, Add, Edit, x182 y339 w30 h20 , 1
Gui, Add, Edit, x222 y339 w30 h20 , 2
Gui, Add, Edit, x182 y369 w30 h20 , 1
Gui, Add, Edit, x222 y369 w30 h20 , 2
Gui, Add, Edit, x182 y399 w30 h20 , 1
Gui, Add, Edit, x222 y399 w30 h20 , 2
Gui, Add, Edit, x182 y429 w30 h20 , 1
Gui, Add, Edit, x222 y429 w30 h20 , 2
Gui, Add, Edit, x182 y459 w30 h20 , 1
Gui, Add, Edit, x222 y459 w30 h20 , 2
Gui, Add, Edit, x182 y489 w30 h20 , 1
Gui, Add, Edit, x222 y489 w30 h20 , 2
Gui, Add, Edit, x182 y519 w30 h20 , 1
Gui, Add, Edit, x222 y519 w30 h20 , 2
Gui, Add, Edit, x182 y549 w30 h20 , 1
Gui, Add, Edit, x222 y549 w30 h20 , 2
Gui, Add, Edit, x302 y129 w30 h20 , 1
Gui, Add, Edit, x342 y129 w30 h20 , 2
Gui, Add, Edit, x302 y159 w30 h20 , 1
Gui, Add, Edit, x342 y159 w30 h20 , 2
Gui, Add, Edit, x302 y189 w30 h20 , 1
Gui, Add, Edit, x342 y189 w30 h20 , 2
Gui, Add, Edit, x302 y219 w30 h20 , 1
Gui, Add, Edit, x342 y219 w30 h20 , 2
Gui, Add, Edit, x302 y249 w30 h20 , 1
Gui, Add, Edit, x342 y249 w30 h20 , 2
Gui, Add, Edit, x302 y279 w30 h20 , 1
Gui, Add, Edit, x342 y279 w30 h20 , 2
Gui, Add, Edit, x302 y309 w30 h20 , 1
Gui, Add, Edit, x342 y309 w30 h20 , 2
Gui, Add, Edit, x302 y339 w30 h20 , 1
Gui, Add, Edit, x342 y339 w30 h20 , 2
Gui, Add, Edit, x302 y369 w30 h20 , 1
Gui, Add, Edit, x342 y369 w30 h20 , 2
Gui, Add, Edit, x302 y399 w30 h20 , 1
Gui, Add, Edit, x342 y399 w30 h20 , 2
Gui, Add, Text, x22 y129 w20 h20 , a1
Gui, Add, Text, x22 y159 w20 h20 , a2
Gui, Add, Text, x22 y189 w20 h20 , a3
Gui, Add, Text, x22 y219 w20 h20 , a4
Gui, Add, Text, x22 y249 w20 h20 , a5
Gui, Add, Text, x22 y279 w20 h20 , a6
Gui, Add, Text, x22 y309 w20 h20 , a7
Gui, Add, Text, x22 y339 w20 h20 , a8
Gui, Add, Text, x22 y369 w20 h20 , a9
Gui, Add, Text, x22 y399 w20 h20 , a10
Gui, Add, Text, x22 y429 w20 h20 , a11
Gui, Add, Text, x22 y459 w20 h20 , a12
Gui, Add, Text, x22 y489 w20 h20 , a13
Gui, Add, Text, x22 y519 w20 h20 , a14
Gui, Add, Text, x22 y549 w20 h20 , a15
Gui, Add, Text, x152 y129 w20 h20 , a16
Gui, Add, Text, x152 y159 w20 h20 , a17
Gui, Add, Text, x152 y189 w20 h20 , a18
Gui, Add, Text, x152 y219 w20 h20 , a19
Gui, Add, Text, x152 y249 w20 h20 , a20
Gui, Add, Text, x152 y279 w20 h20 , a21
Gui, Add, Text, x152 y309 w20 h20 , a22
Gui, Add, Text, x152 y339 w20 h20 , a23
Gui, Add, Text, x152 y369 w20 h20 , a24
Gui, Add, Text, x152 y399 w20 h20 , a25
Gui, Add, Text, x152 y429 w20 h20 , a26
Gui, Add, Text, x152 y459 w20 h20 , a27
Gui, Add, Text, x152 y489 w20 h20 , a28
Gui, Add, Text, x152 y519 w20 h20 , a29
Gui, Add, Text, x152 y549 w20 h20 , a30
Gui, Add, Text, x272 y129 w20 h20 , a31
Gui, Add, Text, x272 y159 w20 h20 , a32
Gui, Add, Text, x272 y189 w20 h20 , a33
Gui, Add, Text, x272 y219 w20 h20 , a34
Gui, Add, Text, x272 y249 w20 h20 , a35
Gui, Add, Text, x272 y279 w20 h20 , a36
Gui, Add, Text, x272 y309 w20 h20 , a37
Gui, Add, Text, x272 y339 w20 h20 , a38
Gui, Add, Text, x272 y369 w20 h20 , a39
Gui, Add, Text, x272 y399 w20 h20 , a40
Gui, Add, Edit, x612 y129 w30 h20 , 1
Gui, Add, Edit, x652 y129 w30 h20 , 2
Gui, Add, Edit, x612 y159 w30 h20 , 1
Gui, Add, Edit, x652 y159 w30 h20 , 2
Gui, Add, Edit, x612 y189 w30 h20 , 1
Gui, Add, Edit, x652 y189 w30 h20 , 2
Gui, Add, Edit, x612 y219 w30 h20 , 1
Gui, Add, Edit, x652 y219 w30 h20 , 2
Gui, Add, Edit, x612 y249 w30 h20 , 1
Gui, Add, Edit, x652 y249 w30 h20 , 2
Gui, Add, Edit, x612 y279 w30 h20 , 1
Gui, Add, Edit, x652 y279 w30 h20 , 2
Gui, Add, Edit, x612 y309 w30 h20 , 1
Gui, Add, Edit, x652 y309 w30 h20 , 2
Gui, Add, Edit, x612 y339 w30 h20 , 1
Gui, Add, Edit, x652 y339 w30 h20 , 2
Gui, Add, Edit, x612 y369 w30 h20 , 1
Gui, Add, Edit, x652 y369 w30 h20 , 2
Gui, Add, Edit, x612 y399 w30 h20 , 1
Gui, Add, Edit, x652 y399 w30 h20 , 2
Gui, Add, Edit, x612 y429 w30 h20 , 1
Gui, Add, Edit, x652 y429 w30 h20 , 2
Gui, Add, Edit, x612 y459 w30 h20 , 1
Gui, Add, Edit, x652 y459 w30 h20 , 2
Gui, Add, Edit, x612 y489 w30 h20 , 1
Gui, Add, Edit, x652 y489 w30 h20 , 2
Gui, Add, Edit, x612 y519 w30 h20 , 1
Gui, Add, Edit, x652 y519 w30 h20 , 2
Gui, Add, Edit, x612 y549 w30 h20 , 1
Gui, Add, Edit, x652 y549 w30 h20 , 2
Gui, Add, Edit, x742 y129 w30 h20 , 1
Gui, Add, Edit, x782 y129 w30 h20 , 2
Gui, Add, Edit, x742 y159 w30 h20 , 1
Gui, Add, Edit, x782 y159 w30 h20 , 2
Gui, Add, Edit, x742 y189 w30 h20 , 1
Gui, Add, Edit, x782 y189 w30 h20 , 2
Gui, Add, Edit, x742 y219 w30 h20 , 1
Gui, Add, Edit, x782 y219 w30 h20 , 2
Gui, Add, Edit, x742 y249 w30 h20 , 1
Gui, Add, Edit, x782 y249 w30 h20 , 2
Gui, Add, Edit, x742 y279 w30 h20 , 1
Gui, Add, Edit, x782 y279 w30 h20 , 2
Gui, Add, Edit, x742 y309 w30 h20 , 1
Gui, Add, Edit, x782 y309 w30 h20 , 2
Gui, Add, Edit, x742 y339 w30 h20 , 1
Gui, Add, Edit, x782 y339 w30 h20 , 2
Gui, Add, Edit, x742 y369 w30 h20 , 1
Gui, Add, Edit, x782 y369 w30 h20 , 2
Gui, Add, Edit, x742 y399 w30 h20 , 1
Gui, Add, Edit, x782 y399 w30 h20 , 2
Gui, Add, Edit, x742 y429 w30 h20 , 1
Gui, Add, Edit, x782 y429 w30 h20 , 2
Gui, Add, Edit, x742 y459 w30 h20 , 1
Gui, Add, Edit, x782 y459 w30 h20 , 2
Gui, Add, Edit, x742 y489 w30 h20 , 1
Gui, Add, Edit, x782 y489 w30 h20 , 2
Gui, Add, Edit, x742 y519 w30 h20 , 1
Gui, Add, Edit, x782 y519 w30 h20 , 2
Gui, Add, Edit, x742 y549 w30 h20 , 1
Gui, Add, Edit, x782 y549 w30 h20 , 2
Gui, Add, Edit, x862 y129 w30 h20 , 1
Gui, Add, Edit, x902 y129 w30 h20 , 2
Gui, Add, Edit, x862 y159 w30 h20 , 1
Gui, Add, Edit, x902 y159 w30 h20 , 2
Gui, Add, Edit, x862 y189 w30 h20 , 1
Gui, Add, Edit, x902 y189 w30 h20 , 2
Gui, Add, Edit, x862 y219 w30 h20 , 1
Gui, Add, Edit, x902 y219 w30 h20 , 2
Gui, Add, Edit, x862 y249 w30 h20 , 1
Gui, Add, Edit, x902 y249 w30 h20 , 2
Gui, Add, Edit, x862 y279 w30 h20 , 1
Gui, Add, Edit, x902 y279 w30 h20 , 2
Gui, Add, Edit, x862 y309 w30 h20 , 1
Gui, Add, Edit, x902 y309 w30 h20 , 2
Gui, Add, Edit, x862 y339 w30 h20 , 1
Gui, Add, Edit, x902 y339 w30 h20 , 2
Gui, Add, Edit, x862 y369 w30 h20 , 1
Gui, Add, Edit, x902 y369 w30 h20 , 2
Gui, Add, Edit, x862 y399 w30 h20 , 1
Gui, Add, Edit, x902 y399 w30 h20 , 2
Gui, Add, Text, x582 y129 w20 h20 , a1
Gui, Add, Text, x582 y159 w20 h20 , a2
Gui, Add, Text, x582 y189 w20 h20 , a3
Gui, Add, Text, x582 y219 w20 h20 , a4
Gui, Add, Text, x582 y249 w20 h20 , a5
Gui, Add, Text, x582 y279 w20 h20 , a6
Gui, Add, Text, x582 y309 w20 h20 , a7
Gui, Add, Text, x582 y339 w20 h20 , a8
Gui, Add, Text, x582 y369 w20 h20 , a9
Gui, Add, Text, x582 y399 w20 h20 , a10
Gui, Add, Text, x582 y429 w20 h20 , a11
Gui, Add, Text, x582 y459 w20 h20 , a12
Gui, Add, Text, x582 y489 w20 h20 , a13
Gui, Add, Text, x582 y519 w20 h20 , a14
Gui, Add, Text, x582 y549 w20 h20 , a15
Gui, Add, Text, x712 y129 w20 h20 , a16
Gui, Add, Text, x712 y159 w20 h20 , a17
Gui, Add, Text, x712 y189 w20 h20 , a18
Gui, Add, Text, x712 y219 w20 h20 , a19
Gui, Add, Text, x712 y249 w20 h20 , a20
Gui, Add, Text, x712 y279 w20 h20 , a21
Gui, Add, Text, x712 y309 w20 h20 , a22
Gui, Add, Text, x712 y339 w20 h20 , a23
Gui, Add, Text, x712 y369 w20 h20 , a24
Gui, Add, Text, x712 y399 w20 h20 , a25
Gui, Add, Text, x712 y429 w20 h20 , a26
Gui, Add, Text, x712 y459 w20 h20 , a27
Gui, Add, Text, x712 y489 w20 h20 , a28
Gui, Add, Text, x712 y519 w20 h20 , a29
Gui, Add, Text, x712 y549 w20 h20 , a30
Gui, Add, Text, x832 y129 w20 h20 , a31
Gui, Add, Text, x832 y159 w20 h20 , a32
Gui, Add, Text, x832 y189 w20 h20 , a33
Gui, Add, Text, x832 y219 w20 h20 , a34
Gui, Add, Text, x832 y249 w20 h20 , a35
Gui, Add, Text, x832 y279 w20 h20 , a36
Gui, Add, Text, x832 y309 w20 h20 , a37
Gui, Add, Text, x832 y339 w20 h20 , a38
Gui, Add, Text, x832 y369 w20 h20 , a39
Gui, Add, Text, x832 y399 w20 h20 , a40
Gui, Add, Edit, x382 y459 w180 h20 , Endsum1
Gui, Add, Edit, x382 y499 w180 h20 , Endsum2
Gui, Add, Text, x62 y99 w60 h20 , A1 D1
Gui, Add, Text, x622 y99 w60 h20 , D2 A2
Gui, Add, Text, x192 y99 w60 h20 , A1 D1
Gui, Add, Text, x312 y99 w60 h20 , A1 D1
Gui, Add, Text, x752 y99 w60 h20 , D2 A2
Gui, Add, Text, x872 y99 w60 h20 , D2 A2
Gui, Add, Button, x802 y589 w140 h30 , calculate
Gui, Show, x127 y82 h663 w996, New GUI Window
Return
GuiClose:
ExitApp
Если есть идеи, буду рад выслушать.
Спасибо за помощь.