Отправка сигнала из метода статического класса в Qt
Я пытаюсь закодировать статическую функцию обратного вызова, которая часто вызывается из другой статической функции в том же классе. Моя функция обратного вызова должнаemit
сигнал, но по какой-то причине он просто не может это сделать. Я положил его под отладчиком иslot
никогда не звонят. Однако, когда я размещаю код, который я использовал дляemit
данные в нестатической функции это работает. Есть ли причина, по которой я не могу излучать сигнал от статической функции? Я попытался объявить новый экземпляр класса и вызвать функцию emit, но безуспешно.
class Foo
{
signals:
emitFunction(int);
private:
static int callback(int val)
{
/* Called multiple times (100+) */
Foo *foo = new Foo;
foo.emitFunction(val);
}
void run()
{
callback(percentdownloaded);
}
};
Я опубликовал некоторый основной код, который демонстрирует то, что я пытаюсь сделать. Я отправлю полный код по запросу.
Изменить: я публикую полный код, так как это своего рода странный сценарий.http://pastebin.com/6J2D2hnM