При создании hBitmap и IPictureDisp из него что я должен удалять при выгрузке формы - VB
Формулировка задачи:
Т.е.
По идее я ему должен сделать
Но если я это сделаю на этапе создания то моя
As IPictureDisp
будет бесполезна.
В коде я делаю:
Варианты ответа:
1) DeleteObject g_picRebarBackground
2) DeleteObject g_picRebarBackground.Handle
3) Set g_picRebarBackground = Nothing
4) ваабще ничего не делать
Если бы g_picRebarBackground создавался один раз я бы забил.
Но при Form_resize я его перерисовываю (градиент растянут на ширину Rebar, перерисовка вполне себе культурно внешне работает):
Задница в том, что если я чего-то недоглядел и ресурсы эти жрутся, а не авто-удаляются (как хотелось бы), то это задница, поэтому опасения не праздные.
Да, и еще.
Если сделать
1) DeleteObject g_picRebarBackground
2) DeleteObject g_picRebarBackground.Handle
а при этом в коде не выполнялось
set = g_picRebarBackground
то прога при этом вылетит
Error91: Object NOT set
Как записать
If (g_picRebarBackground) then DeleteObject
(будем считать, я не знаю точно был ли он Set -делается в завис. от OS, от выбранного стиля и т.п., юзер мог допустим отключить Темы в процессе работы - я специально данное действо не отслеживаю -пускай перегружает если интерфейс сильно съехал)
По идее я ему должен сделать
Но если я это сделаю на этапе создания то моя
As IPictureDisp
будет бесполезна.
В коде я делаю:
Варианты ответа:
1) DeleteObject g_picRebarBackground
2) DeleteObject g_picRebarBackground.Handle
3) Set g_picRebarBackground = Nothing
4) ваабще ничего не делать
Если бы g_picRebarBackground создавался один раз я бы забил.
Но при Form_resize я его перерисовываю (градиент растянут на ширину Rebar, перерисовка вполне себе культурно внешне работает):
Задница в том, что если я чего-то недоглядел и ресурсы эти жрутся, а не авто-удаляются (как хотелось бы), то это задница, поэтому опасения не праздные.
Да, и еще.
Если сделать
1) DeleteObject g_picRebarBackground
2) DeleteObject g_picRebarBackground.Handle
а при этом в коде не выполнялось
set = g_picRebarBackground
то прога при этом вылетит
Error91: Object NOT set
Как записать
If (g_picRebarBackground) then DeleteObject
(будем считать, я не знаю точно был ли он Set -делается в завис. от OS, от выбранного стиля и т.п., юзер мог допустим отключить Темы в процессе работы - я специально данное действо не отслеживаю -пускай перегружает если интерфейс сильно съехал)
Решение задачи: «При создании hBitmap и IPictureDisp из него что я должен удалять при выгрузке формы»
textual
Листинг программы
If Not g_picRebarBackground Is Nothing Then Set g_picRebarBackground = Nothing
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д