if (b->InvokeRequired) {
FuncDelegat^ as = gcnew FuncDelegat(funct1);
b->Invoke(as,nullptr);
return;
}
Почему этот код может не вызов функции funct1метод Invoke пользовательского интерфейса
if (b->InvokeRequired) {
FuncDelegat^ as = gcnew FuncDelegat(funct1);
b->Invoke(as,nullptr);
return;
}
Почему этот код может не вызов функции funct1метод Invoke пользовательского интерфейса
funct1 не вызывается, если InvokeRequired возвращает ложь. Правильный путь:
if (b->InvokeRequired) { FuncDelegat^ as = gcnew FuncDelegat(funct1); b->Invoke(as,nullptr); } else { b->funct1(nullptr); } return;
я добавил его в код, но все же не происходит вызов функции во флаге. – Xaver
Просьба предоставить более подробную информацию: что такое b, тип делегирования, определение funct1 и т. Д. –
b это класс формы. Я создаю новый поток, который должен работать с Формой. Для этого у меня есть функция funct1. Делегат FuncDelegat: делегат void FuncDelegat(); – Xaver
, потому что вызов funct1 не вызвать – fabrizioM