Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Отдельная тема по сокращению кода.

Страниц (5): « 1 2 [3] 4 5 »
 

21. 007wan - 19 Мая, 2019 - 07:22:44 - перейти к сообщению
 Zireael пишет:
Только зачем было её делать локальной, она хранит максимальную длину строки списка, а вы её обнуляете при каждом вызове функции.

Всмысле делать локальной? Всмысле обнуляйте? этот код не я писал, а только дополнял как нужно.
(Добавление)
Я просто переименовал переменные, что бы выделялись как-то и не путаться что бы
(Добавление)
ТЫ про int Max_length = 0;? А, ну я решил, что всё, что связанное с логом будет в этой функции, а то, что она обнуляется - это ничего страшного, так ?
(Добавление)
 007wan пишет:
она хранит максимальную длину строки списка, а вы её обнуляете при каждом вызове функции
Она всёравно обнулится или получит значение функцией GetTextExtentPoint32 так что без разницы вроде)
22. Zireael - 19 Мая, 2019 - 07:59:05 - перейти к сообщению
 Цитата:
так что без разницы вроде

Потом не надо удивляться куда из списка пропал горизонтальный скролл.
23. 007wan - 19 Мая, 2019 - 08:14:06 - перейти к сообщению
 Zireael пишет:
Потом не надо удивляться куда из списка пропал горизонтальный скролл.
Хорошо. Исправлю.
24. 007wan - 20 Мая, 2019 - 08:45:40 - перейти к сообщению
 Zireael пишет:
char buffer[255];
for (int c=0; c<sizearray(Object_Checkbox); c++)
{
GetPrivateProfileString ("Default", "Object_Combobox"+format(c), 0, address(#buffer[0]), 255, PathSaveSettings);
Load_Checkbox[c]=formatsn(format(#buffer[0]));
messagebox(Load_Checkbox[c]);
}

А я не понял. А как и где мне хранить значения уже загруженные? и как потом их дать контролу?
(Добавление)
А как мне их сохранить в файл? если они int?
Было (Отобразить)

(Добавление)
Вот так я из файла их загружаю.
CODE:
for (int a=0; a<sizearray(Object_Checkbox); a++)
{
SendMessage(Object_Checkbox[a], BM_SETCHECK, format(Load_Checkbox[a]), 0);
}

(Добавление)
 007wan пишет:
format(Load_Checkbox[a]), 0);
Пордон. без formata Всё работает. даже ввел, даже добавил кое-что.Думаю понятно что:
CODE:
for (int b=0; b<sizearray(Object_Checkbox); b++)
{
Status_Checkbox[b] = SendMessage(Object_Checkbox[b], BM_GETSTATE, 0, 0);

if (Status_Checkbox[b] == 8)
{
Status_Checkbox[b] = 0;
}

if (Status_Checkbox[b] == 9)
{
Status_Checkbox[b] = 1;
}

WritePrivateProfileString ("Default", "Object_Checkbox"+format(b), format(Status_Checkbox[b]), PathSaveSettings);
}

(Добавление)
А сравнивать теперь: Вместо:
CODE:
/*
if(format(#Load_Checkbox1[0]) == "1")
{
transparency (-1, Browser);
}

Так:
CODE:
/*
if(Load_Checkbox[0] == 1)
{
transparency (-1, Browser);
}
???
(Добавление)
Ай, сам ответил на свой вопрос) Всё работает. спасибо всёравно)
25. 007wan - 31 Мая, 2019 - 08:00:33 - перейти к сообщению
Как сократить запись?
Функция (Отобразить)
И не понимаю вроде 500 паузы хватает перед Image_3 ,но после первого нахождения просто обрубается, выходит на else Image_3, хотя еще есть одно изображение.
26. Zireael - 31 Мая, 2019 - 17:39:05 - перейти к сообщению
 Цитата:
Как сократить запись?

Сомневаюсь что кто-то будет разбираться в нагромождении goto. Они вообще тут не нужны.
Опишите задачу чтобы было понятно что требуется сделать.
27. 007wan - 01 Июня, 2019 - 01:40:09 - перейти к сообщению
Zireael , Описываю
Код (Отобразить)


Ищет изображение1, если нашел, то кликнуть на него и искать изображение3. Если не нашел изображение1, то искать изображение2. Если нашел изображение3, то кликнуть на него и снова искать изображение3(по кругу). Если не нашел изображение3, то искать изображение2. Если нашел изображение2, то ничего, а если не нашел, то искать изображение1 и всё снова по кругу. Я же максимально понятный код предоставил с метками и пронумеровал их даже для ясности. А метки здесь 100% понадобятся, т.к что бы игнорировать либо выше код и переходить к нужному поиск(например, игнорировать вписывать в лог текст). Если есть лучше предложение, то пожалуйста. Посмотрим как без меток заработает, но я - сомневаюсь. Спасибо.
28. Zireael - 01 Июня, 2019 - 06:43:46 - перейти к сообщению
 Цитата:
А метки здесь 100% понадобятся

В некоторых языках goto вообще нет и ничего.
Зачем искать изображение2 если в итоге с ним ничего не нужно делать?
29. 007wan - 27 Августа, 2019 - 03:40:06 - перейти к сообщению
код (Отобразить)

(Добавление)
Как сократить запись кода? А то я сжал его как мог(избавился перепрыгивания из функции с функцию), а дальше не знаю как. Он всеравно огромный.
(Добавление)
Обязательно жмите крестик в диалоге 1 раз хотя бы, дабы после повторного запуска мьютекс не закрыл программу полностью
30. Zireael - 27 Августа, 2019 - 03:45:25 - перейти к сообщению
 Цитата:
Как сократить запись кода?

Тут нечего сокращать.

Powered by ExBB FM 1.0 Final