Вот код
http://www.easy-share.com/1913189196/cg_tribe_test.zipСобственно что есть?
2 формы и на каждой из них элементы управления.
На первой слайдеры, на второй label. Через слот и сигнал сделал передачу так сказать значения...
можете в mainwindow.cpp закомментить
mutex.lock();
double f=(double)MainWindow::ticktack + (double)ui->SliderA->value()+ (double)ui->SliderB->value();
mutex.unlock()
;
и скомплить, должно работать.
Ну как бы надо малость не это.
Нужно ещё использовать 2 промежуточных потока.
В mainwindow.cpp выше конструктора я их объявил.
А в конструкторе вызвал их...
В первом из них должно производиться вычисление
double f=(double)MainWindow::ticktack + (double)ui->SliderA->value()+ (double)ui->SliderB->value();
второй поток должен это значение получить из первого и вывести в лейбл второй формы(dialog).
Даже лучше циклы в первом потоке сделать чтобы он не заканчивался, а постоянно считал
mutex.lock();
while (true)
{
double f=(double)MainWindow::ticktack + (double)ui->SliderA->value()+ (double)ui->SliderB->value();
}
mutex.unlock();
как -нибудь так , чтобы на протяжении всей программы он считал...
ух
Как мне правильно через сигналы и слоты сделать связь?
Вот тут
void RenderThread::run()
{
// Пhинимает значения из обработки 1 потока
// Вывод значения во вторую форму
}
надо принять f значение и отправить его в лейбл.
Похоже тут сигнал опять писать надо и через emit сделать.
Вообщем надо узнать как 1 поток может получить значения слайдеров и таймер, 2 поток из первого f может получить и в лейбл записать?
Я в функиях потоков писал emit, но так делать нельзя что ли... или касячу...