Суббота, 04 Мая 2024, 12:16

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Программирование » Программирование .NET » Доступ к контролу из другого потока (?)
Доступ к контролу из другого потока (?)
MelfonsДата: Понедельник, 10 Февраля 2014, 19:16 | Сообщение # 1
был не раз
Сейчас нет на сайте
Доброго времени суток, друзья. Есть форма, на ней есть Label в котором записано ХП персонажа. В этой форме создаю поток, который крутит бесконечный цикл(обновляется полоска ХП). Выдает ошибку
Код
Недопустимая операция в нескольких потоках: попытка доступа к элементу управления 'labHP' не из того потока, в котором он был создан.

Знаю, что это должно делаться через Ivoke(), но никак не могу в нем разобраться, есть ли другой способ?

Заглушку
Код
System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false;
не предлагать.

Спасибо за внимание.
castielblackДата: Понедельник, 10 Февраля 2014, 19:28 | Сообщение # 2
почетный гость
Сейчас нет на сайте
Делегаты + инвоук, но если это не подходит, то Вам нужен асинхронный подход( BackgroundWorker )

Знания : C#, Lua, C++, Unity, Dreemchest, DirectX 11
Выпущенные проекты : BuildAndRun, Match 3 Cubes


Сообщение отредактировал castielblack - Понедельник, 10 Февраля 2014, 19:29
MelfonsДата: Четверг, 13 Февраля 2014, 17:46 | Сообщение # 3
был не раз
Сейчас нет на сайте
Цитата castielblack ()
Делегаты + инвоук, но если это не подходит, то Вам нужен асинхронный подход( BackgroundWorker )

Спасибо, разобрался с Ивноуком. Если кому понадобиться http://www.cyberforum.ru/csharp-beginners/thread384964.html
Форум игроделов » Программирование » Программирование .NET » Доступ к контролу из другого потока (?)
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг