Графический интерфейс зависает случайным образом/MFC/C++C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Графический интерфейс зависает случайным образом/MFC/C++

Сообщение Anonymous »

Я столкнулся со странной проблемой, из-за которой графический интерфейс случайно зависает при нажатии кнопки.
По сути, это пример кода:

Код: Выделить всё

`void dialog::OnButton1Clicked()
{
m_threadCmd = Button1; //Button1 is an enum from commandEnumList
AfxBeginThread(ui_ThreadExecuteCmd, this);
}

UINT dialog::ui_ThreadExecuteCmd()
{
OWaitCursor waitCursor;
switch (this->m_threadCmd)
{
case BUTTON1:
if (!Func1())
{
ShowError();
}
break;
}
this->m_threadCmd = 0;
return 0;
}

bool Func1()
{
//Notify GUI via PostMessage to disable the controls in the main thread
//Do some processing
//Notify GUI via PostMessage to enable the controls in the main thread
//return errorcode
}`
Странно то, что иногда все работает нормально, а иногда графический интерфейс зависает.
Я вижу, как кнопки пользовательского интерфейса отключаются, затем выполняется операция, а затем кнопки пользовательского интерфейса снова включаются. . После этого зависание графического интерфейса происходит случайным образом, и когда он зависает, кнопки становятся недоступными для нажатия, и я не получаю никакого сообщения в PreTranslateMsg() после зависания для щелчка мыши или чего-либо еще.
Добавлены журналы для проверки если происходит какой-то тупик, но кажется, что это не так. Каждая функция вызывается и выполняется в той последовательности, в которой она должна быть. Тем не менее, зависание графического интерфейса произошло.

Подробнее здесь: https://stackoverflow.com/questions/790 ... omly-mfc-c
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»