Я работаю над простым приложением, которое рисует альфа-смешанное изображение в контексте устройства экрана каждые 2 секунды, я хочу обновить содержимое экрана перед операцией рисования (чтобы стереть нарисованный рисунок),
Я использовал много-много трюков, но, к сожалению, экран не обновляется корректно, в некоторых регионах все еще остаются части нарисованного изображения
Я очень разочарован этой проблемой: (* 1005 *
Это исходные коды, которые я использовал, я использую C #
SendMessage(HWND_BROADCAST, WM_SYSCOLORCHANGE, IntPtr.Zero, IntPtr.Zero); // wasted time in the refreshing process is enough to keep this.
UpdateWindow(HWND_BROADCAST);// does not work at all!
InvalidateRect(IntPtr.Zero,IntPtr.Zero,true); // the same goes here.
SendMessage(HWND_BROADCAST, WM_PAINT, IntPtr.Zero, IntPtr.Zero); // pfffff !
SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, new IntPtr(SPI_SETNONCLIENTMETRICS), IntPtr.Zero); // trying to refresh the explorer, no resutl
Я также использовал EnumWindows и перезвонил, очень медленно и не подходит для моего случая.
Я хочу обновить весь экран
Помогите пожалуйста!
Привет
Валида