|
|
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
У меня есть процедура сохранения параметров формы (координат и сплитеров) в INI-файл. Эта процедура отрабатывает в том числе и на WM_WINDOWPOSCHANGED. Ситуация такая: закрываю приложение - всё сохраняется нормально. Ставлю брэкпоинт на первой строке Create главной формы и к этому моменту INI-файл уже изменён на дефолтные (дизайн-таймные) параметры. Что у нас происходит до Create у формы? Я уже завёл глобальную переменную Locked, решаю где её делать TRUE . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2019, 21:30 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
Для решения проблемы воспользовался Application.Tag Но всё же интересно что происходит до Create если во всех учебниках onCreate это исток ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2019, 21:52 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
OxY63rusДля решения проблемы воспользовался Application.Tag Но всё же интересно что происходит до Create если во всех учебниках onCreate это исток Воспользуйся отладчиком и кнопкой F7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2019, 21:54 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
Писать на диск состояние при любом перемещении/изменении -- это фейл. Надо делать это либо при закрытии формы/приложения, либо писать в память/переменную, а при закрытии формы/приложения сбрасывать уже на диск. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 00:26 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
JaDi, не вижу криминала. С какой частотой Вы любите перемащать формы? Вопрос риторический. В любом случае спасибо за Ваше мнение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 11:35 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
OxY63rusJaDi, не вижу криминала. "Спасибо" скажут пользователи недорогих SSD. Любая дисковая операция при этом ведет к лишнему дерганью антивируса, а тот в свои логи еще чего-нить будет запихивать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 12:51 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
OxY63rusНо всё же интересно что происходит до Create если во всех учебниках onCreate это исток Во-первых, Create и OnCreate это две очень разные вещи. Между первым и вторым происходит очень много всего. Выкинь учебники, открой для себя исходники VCL. Во-вторых, окно перемещается при создании. Сурпрайз? Да, именно так написана уже упомянутая VCL. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 13:02 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
GrigoriyFomin, это проблема антивируса. Пользователь сделал действие я хочу это запомнить. И использовать даже в случае крэша приложухи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 16:43 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, уже ни разу не сюрпрайз. Как раз и рассчитывал получить полезную инфу запостив сюда? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 16:45 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
OxY63rusDimitry Sibiryakov, уже ни разу не сюрпрайз. Как раз и рассчитывал получить полезную инфу запостив сюда? бл?*:!, что это за диалект? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 16:50 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
ёёёёё, смирись и имей толерантность ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 17:02 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
OxY63rusКак раз и рассчитывал получить полезную инфу запостив сюда? Это ты зря. Ни букварь, ни MSDN, ни исходники VCL тебе тут пересказывать не будут. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 17:35 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
OxY63rus, А что у вас передаётся с ini-файла?, каковы значения по-умолчанию? Что произойдёт, если вы удалите ini-файл? Можно увидеть код процедуры OnCreate ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 22:51 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
OxY63rus, до OnCreate происходит то, что вы кликаете мышкой на запуск приложения и в этот момент инициализируются переменные и читается ваш ini-файл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 22:56 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
WM_WINDOWPOSCHANGED.... Вы устанавливаете ограничение на размер или положение формы до того, как записать это в ИНИ-файл?. Надеюсь значения по-умолчанию в третьем параметре файла меньше, чем размер этого ограничения.... В любом случае, покажите ваш код OnCreate ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2019, 23:04 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
хто тут?! Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2019, 15:50 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
OxY63rusУ меня есть процедура сохранения параметров формы (координат и сплитеров) в INI-файл. Эта процедура отрабатывает в том числе и на WM_WINDOWPOSCHANGED. Ситуация такая: закрываю приложение - всё сохраняется нормально. Ставлю брэкпоинт на первой строке Create главной формы и к этому моменту INI-файл уже изменён на дефолтные (дизайн-таймные) параметры. Что у нас происходит до Create у формы? Я уже завёл глобальную переменную Locked, решаю где её делать TRUE . Я тоже так делаю, только в OnShow. Восстанавливаю размер и положение окна закрытого в последний раз. Сохраняю в OnClose. Все работает. Можно еще использовать OnActivate/OnDeactivate. Но так как формы у меня модальные, то я с этим не парюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2019, 17:29 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
Belotsky Serge, я тоже сохранял я onClose, а сейчас хочу сохранять сразу по изменению положения. Код приводить не имеет смысла, если принцип нужен поясню. На сообщение WM_WINDOWPOSCHANGED вешаю обработчик, который сначала проверяет новые параметры формы с текущими. Если изменили, то разблркирует сохранение параметров (Applucation.Tag присваивает определённое значение. Потом inherited собственно изменяет параметры формы. Процедура сохранения перед изменением INI проверяет значение Application.Tag и только если оно разблокировано (имеет определённое значение), то сохраняет. И теперь перед созданием всех форм мы блокируем Tag,а разблркирует только в нужных событиях формы и, как писал выше, при определённых условиях в обработчик сообщения. за термин "блокировать Tag" не ругайте, кому надо - тот поймёт ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2019, 18:22 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
полная хрень. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2019, 18:23 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
А как оно работает при развёртывании на весь экран или минимизации ты уже проверил? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2019, 18:24 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, у меня bsSizeToolWin. При закрытии уходит в трей. В трее меню с выходом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2019, 18:41 |
|
||
|
Жизненный цикл формы
|
|||
|---|---|---|---|
|
#18+
OxY63rusу меня bsSizeToolWin. При закрытии уходит в трей. И ты уже проверил как она реагирует на пункт меню или горячую кнопку Windows "минимизировать все окна"? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2019, 18:48 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39872850&tid=2038953]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
173ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 453ms |

| 0 / 0 |
