Я работаю в vb6 с gdi32.dll.В моем бланке есть коробка цен, где я рисую некоторый прямоугольник в соответствии с данными из модели данных для визуализации.
ret = Rectangle(Picture1(i).hdc, X1, 0, x2 , 50)
На этом Picturebox хабе реализовал mouseMouve () - Слушатель, чтобы отрегулировать Прямоугольники движением мыши.Этот слушатель вызывает мою функцию для рисования:
ret = Rectangle(Picture1(0).hdc, 0, 0, Picture1(0).Width, Picture1(0).Height)
ret = Rectangle(Picture1(i).hdc, X1, 0, x2 , 50)
Таким образом, каждый раз, когда позиция мыши изменяется, печатается 2 новых прямоугольника - один прямоугольник-колдун перекрашивает всю область Picturebox с цветом фона, а другой - для визуализации вспомогательных данных.
Проблема в используемой памяти.Когда я использую мышь, чтобы активировать данные, она будет увеличиваться в полной памяти и замедлять работу приложения.
Поэтому у меня вопрос, есть ли способ удалить / удалить старые прямоугольники перед рисованием новых?