У меня есть две функции — draw1 () и draw2 (), которые рисуют растровое изображение в DC. Мне нужно звонить им один за другим. Так что я делаю это в
void CDlg::OnPaint()
{
for(int i=0;i<10;i++)
{
draw1();
draw2();
}
}
Я также хочу добавить событие clickmouse, то есть, когда я нажимаю левую кнопку мыши, курсор должен исчезнуть. Так что я делаю это в
void CDlg::OnLButtonUp(UINT nFlags, CPoint point) {
ShowCursor(FALSE);
}
Но событие щелчка мыши не происходит, если только цикл for в OnPaint () не завершается.
Я хочу, чтобы цикл for продолжался, в то же время щелчок мыши должен происходить без прерывания цикла for.
Как я могу внести изменения или добавить, чтобы получить результат?
РЕДАКТИРОВАТЬ: Почему цикл?
В draw1 () & draw2 (), я читаю первый кадр из двух файлов YUV соответственно, преобразовываю в растровое изображение и затем рисую его в DC. Я переключаюсь между 2 растровыми изображениями через 1 сек. Например, скринсейвер. Отсюда цикл.
Вы не инициализировали переменную.
for(int i=;i<10;i++)
инициализировать переменную
for(int i=0;i<10;i++)// initialize with any value
Многозадачность.
Я начал тему в onPaint () — AfxBeginThread(Process, this, THREAD_PRIORITY_NORMAL, 0, 0, NULL);
В Process () — вызывается функция цикла for.
Теперь это работает.
Спасибо.