Форум программистов, компьютерный форум, киберфорум
C++/CLI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
12 / 12 / 0
Регистрация: 25.06.2011
Сообщений: 165
1

Не выполняется без MessageBox::Show()

03.09.2013, 05:07. Показов 1124. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Уже не в первый раз замечаю, что в некоторых случаях MessageBox "заставляет" работать код:
вывожу видео с камеры в форму, если есть MessageBox::Show(), то видео в pictureBox проигрывается, а если нет - не проигрывается, код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
Emgu::CV::Capture^ capture = gcnew Emgu::CV::Capture(); 
IntPtr frame = IntPtr();
while(true){
    MessageBox::Show("");
    frame = CvInvoke::cvQueryFrame(capture);
    Emgu::CV::Image<Bgr, Byte>^ rgb32Image = gcnew Emgu::CV::Image<Bgr, Byte>(capture->Width, capture->Height, Bgr(0,0,0));
    CvInvoke::cvCopy(frame, rgb32Image->Ptr, IntPtr::Zero);
    this->pictureBox1->Image = rgb32Image->ToBitmap();
    int c = CvInvoke::cvWaitKey(33);
    if(c == 27) 
        break;
}
Так все идет. А вот так уже нет:
C++
1
2
3
4
5
6
7
8
9
10
11
Emgu::CV::Capture^ capture = gcnew Emgu::CV::Capture(); 
IntPtr frame = IntPtr();
while(true){
    frame = CvInvoke::cvQueryFrame(capture);
    Emgu::CV::Image<Bgr, Byte>^ rgb32Image = gcnew Emgu::CV::Image<Bgr, Byte>(capture->Width, capture->Height, Bgr(0,0,0));
    CvInvoke::cvCopy(frame, rgb32Image->Ptr, IntPtr::Zero);
    this->pictureBox1->Image = rgb32Image->ToBitmap();
    int c = CvInvoke::cvWaitKey(33);
    if(c == 27) 
        break;
}



Еще пример, так таймер работает:
C++
1
2
3
this->timer1->Enabled = true;
this->timer1->Start();
MessageBox::Show("");
А вот так уже нет:
C++
1
2
this->timer1->Enabled = true;
this->timer1->Start();
Последний пример справедлив только в асинхронном колбеке, который вызван socket->BeginConnect().
В чем проблема?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.09.2013, 05:07
Ответы с готовыми решениями:

Как запрограммировать кнопку Cancel в MessageBox::Show?
Есть диалоговое окно сообщения. Как запрограмировать кнопку cancel на закритие программи. Вот код:...

Может ли MessageBox::Show() как-то влиять на данные программы?
Может ли MessageBox::Show() както влиять на данные программы??? Я програмирую игру Шашки.Для етого...

Два раза открывается MessageBox.Show после второго вызова MessageBox
Здравствуйте! Подскажите пожалуйста... Мне вот надо было сделать диалоговое окно для ввода данных...

Messagebox.show
Как вывести результат Console.WriteLine(&quot;key={0} volue={1}&quot;, i, dict); в...

3
128 / 86 / 10
Регистрация: 03.02.2011
Сообщений: 477
05.09.2013, 07:54 2
"видео не проигрывается" - форма висит?
0
12 / 12 / 0
Регистрация: 25.06.2011
Сообщений: 165
06.09.2013, 14:34  [ТС] 3
Цитата Сообщение от KokosSPb Посмотреть сообщение
"видео не проигрывается" - форма висит?
Да. Странно, что я так написал...
0
128 / 86 / 10
Регистрация: 03.02.2011
Сообщений: 477
06.09.2013, 14:42 4
Если у тебя запущено считываение отдельным потоком, тогда почитай про Invoke, если нет, то поставь прерывание хоть какое-нибудь через Sleep()
1
06.09.2013, 14:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.09.2013, 14:42
Помогаю со студенческими работами здесь

MessageBox.Show()
Здравствуйте! Я вызываю метод MessageBox.Show(&quot;!!!!&quot;) и мне необходимо, что бы пока я его не...

MessageBox.Show() + Scroll
Приветствие. Подскажите пожалуйста способ, с помощью которого можно показать большое количество...

MessageBox.Show из dll
Всем привет ) Как мне сделать чтобы dll могла сделать MessageBox.Show ? А то у меня...

Не выходит MessageBox.Show
Приветствую, перепробовал множество вариантов но при нажатие на кнопку так и не выходит. Не понимаю...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru