Открыть окно по размеру ClientArea главного окна

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Открыть окно по размеру ClientArea главного окна

Сообщение kreator »

Вообще-то использование halt некошерно:
HALT should not be used in multi-DLL applications, and should only be used as a debugging technique.
HALT не должен использоваться в приложениях с несколькими DLL, и должен использоваться только как метод отладки.
We are hard at work… for you. :)
Yufil
Ветеран движения
Сообщения: 1277
Зарегистрирован: 16 Май 2006, 14:34
Контактная информация:

Открыть окно по размеру ClientArea главного окна

Сообщение Yufil »

Ну да... Но зачем-то этот оператор есть.. Специально залез в HELP и проверил наличие GOTO, сразу от души отлегло :D

Бывают случаи, когда без него хреново. Например, когда ты глубоко внутри программы обнаруживаешь, что база отрубилась. Или поступил снаружи некий сигнал, что надо срочно выйти из программы. Или приходится ( мой случай ) работать со сторонней библиотекой с огромными утечками памяти и не освобождающей нужные файлы. В программе стоит что-то типа:

Код: Выделить всё

IF  abortFlag 
   RUN( COMMAND( 0 ) )
   HALT() 
END 
Программа сама себя явно рестартует ....
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Открыть окно по размеру ClientArea главного окна

Сообщение kreator »

Yufil писал(а): 12 Апрель 2019, 15:58 Ну да... Но зачем-то этот оператор есть.. Специально залез в HELP и проверил наличие GOTO, сразу от души отлегло :D
По поводу GOTO недавно был забавный случай. Великовозрастный коллега похвалился классным ходом. Оказалось, это goto. Но, оказывается, так просто его не напишешь, компилятор ругается. И он нашёл вариант!!! Создал рутину и вот там... Я говорю - "Твою энергию да в мирных целях". Я переписал его кусок минут за пять через loop. Получилось компактнее и понятнее. Сколько потратил времени на поиск решения как обмануть компилятор, которые ругается на метки для goto неизвестно. Думаю более пяти минут. И по своей сути получил говнокод. Грубовато, но что поделать?
We are hard at work… for you. :)
Ответить