Russian Qt Forum
Апрель 25, 2024, 03:45 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 2 3 [4] 5   Вниз
  Печать  
Автор Тема: Некорректное выполнение  (Прочитано 21370 раз)
Satansoft
Гость
« Ответ #45 : Ноябрь 27, 2014, 18:58 »

Я интерпретирую задачку в алгоритм, в своём понимании:

20 детей - массив из 20 потоков, вызываемый по нажатию на кнопку
мама - представлена отдельным потоком

20 детей получают доступ к переменной, поочередно декрементируя её благодаря мьютексу (до сих пор не ясно как быть, когда детей 20, а слив 100, выкрутился дав каждому по 100/20 слив...)
по достижении переменной 0, вызывается поток мамы, представленныйй отдельным классом, в котором объекту присвоивается 100, а затем переприсваивается классу деток через указатель на маму: food=mom->foodest;

Всё это выполняется неограниченное количество раз, пока не прервёмся (тут разные варианты)..
Записан
Alexu007
Гость
« Ответ #46 : Ноябрь 28, 2014, 01:04 »

Ну, значит каждый понял задачу по-своему. Точнее, я хочу её даже чуток усложнить - сделать детей неодинаковыми, чтобы каждый кушал свою сливу за разный промежуток времени (разный аппетит). Маман в моём понимании просто функция, которая наполняет пустую тарелку, и которую может вызвать любой из детей. А тарелка - глобальная переменная, к которой имеют доступ и дети и мама. Некошерно, но мне плевать.

Детей сделаю для начала одного, потом ещё двух, и посмотрим, как оно заработает.

Дети на экране будут представлены цифрой, показывающей степень голодности, допустим от 9 до 0, и когда 0 - ребёнок берёт сливу. Тарелка - цифра текущего количества слив. Мамы на экране не видно.

p.s. мама не функция, мама - слот, соединённый с сигналами детей.
« Последнее редактирование: Ноябрь 28, 2014, 01:13 от Alexu007 » Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #47 : Ноябрь 28, 2014, 07:45 »

Я интерпретирую задачку в алгоритм, в своём понимании:

20 детей - массив из 20 потоков, вызываемый по нажатию на кнопку
мама - представлена отдельным потоком

20 детей получают доступ к переменной, поочередно декрементируя её благодаря мьютексу (до сих пор не ясно как быть, когда детей 20, а слив 100, выкрутился дав каждому по 100/20 слив...)
по достижении переменной 0, вызывается поток мамы, представленныйй отдельным классом, в котором объекту присвоивается 100, а затем переприсваивается классу деток через указатель на маму: food=mom->foodest;

Всё это выполняется неограниченное количество раз, пока не прервёмся (тут разные варианты)..
У ребенка нет никакого своего счетчика 100/20, он берет сливу, ест ее, берет следующую и.т.д пока миска не пуста. Иначе зовет маму и ждет пока тарелка наполнится. Если кто-то другой уже позвал маму - сразу ждет.

Мама - постоянно действующее лицо (а не поток который запускается и сразу убивается как у Вас). Она ждет пока ее позовут, наполняет миску и снова ждет.

Смысл задачи - синхронизация, сделать так чтобы дети ждали когда мама наполнит, и наоборот, мама ждет когда дети позовут. "Ожидание" сводится к тому что нитка стоит на мутексе или семафоре
« Последнее редактирование: Ноябрь 28, 2014, 07:49 от Igors » Записан
Alexu007
Гость
« Ответ #48 : Ноябрь 28, 2014, 10:32 »

Уря! Запустил 2 процесса, каждый запускается своей кнопкой и выводит в свою метку. Теперь этот мощный инструмент в руках дилетанта!!!

Пока ессно с 2-мя отдельными классами потоков и соотв. +4 файла в проект. А, кстати, что за фигня? Неужели каждый новый класс это обязательно 2 дополнительных файла? В каждом по неск. строчек кода. В один файл скинуть никак?

Теперь реализую "маму" по простому, без мьютексов и пауз. Например. Ребенок натыкается на пустю тарелку и начинает каждые 0,1 сек тыкаться в тарелку и отправлять сигнал маме. Мама получает сигнал, проверяет, пуста ли тарелка, если пуста - наполняет. Если не пуста - значит пришло уже несколько сигналов - лишние просто игнорируются.

Посмотрим, насколько дастся загрузить проц. моим тупым кодом Смеющийся
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #49 : Ноябрь 28, 2014, 11:23 »

Неужели каждый новый класс это обязательно 2 дополнительных файла? В каждом по неск. строчек кода. В один файл скинуть никак?

Много классов можно тупо в один файл сохранять, но это может аукнуться при компиляции, например, медленной скоростью сборки. Да и просто не рекомендуется так делать в с++.
Записан

Alexu007
Гость
« Ответ #50 : Ноябрь 28, 2014, 12:59 »

Спасиб. Да это и не нужно наверное. В конструктор можно параметр передавать, я пробую, но пока что-то не получается. А... всё получилось, уесс!!!

Можно приступать.
« Последнее редактирование: Ноябрь 28, 2014, 13:24 от Alexu007 » Записан
Alexu007
Гость
« Ответ #51 : Ноябрь 29, 2014, 02:35 »

Код
C++ (Qt)
#include "widget.h"
#include "ui_widget.h"
 
 
int tarelka;
 
 
Widget::Widget(QWidget *parent) :
   QWidget(parent),
   ui(new Ui::Widget)
{
   ui->setupUi(this);
 
   d_01 = new detki(100);
   d_02 = new detki(110);
   d_03 = new detki(120);
   d_04 = new detki(130);
   d_05 = new detki(140);
   d_06 = new detki(150);
   d_07 = new detki(160);
   d_08 = new detki(170);
   d_09 = new detki(180);
   d_10 = new detki(190);
   d_11 = new detki(200);
   d_12 = new detki(210);
   d_13 = new detki(220);
   d_14 = new detki(230);
   d_15 = new detki(240);
   d_16 = new detki(250);
   d_17 = new detki(260);
   d_18 = new detki(270);
   d_19 = new detki(280);
   d_20 = new detki(290);
 
 
   QObject::connect(ui->phButton_01, SIGNAL(clicked()), this, SLOT(MyEventStart()));
 
   QObject::connect(d_01, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_02, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_03, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_04, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_05, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_06, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_07, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_08, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_09, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_10, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_11, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_12, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_13, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_14, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_15, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_16, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_17, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_18, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_19, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
   QObject::connect(d_20, SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
 
 
   QObject::connect(d_01, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_02, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_03, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_04, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_05, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_06, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_07, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_08, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_09, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_10, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_11, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_12, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_13, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_14, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_15, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_16, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_17, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_18, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_19, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_20, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
 
   QObject::connect(d_01, SIGNAL(DetiInfo(QString)), ui->label_01, SLOT(setText(QString)));
   QObject::connect(d_02, SIGNAL(DetiInfo(QString)), ui->label_02, SLOT(setText(QString)));
   QObject::connect(d_03, SIGNAL(DetiInfo(QString)), ui->label_03, SLOT(setText(QString)));
   QObject::connect(d_04, SIGNAL(DetiInfo(QString)), ui->label_04, SLOT(setText(QString)));
   QObject::connect(d_05, SIGNAL(DetiInfo(QString)), ui->label_05, SLOT(setText(QString)));
   QObject::connect(d_06, SIGNAL(DetiInfo(QString)), ui->label_06, SLOT(setText(QString)));
   QObject::connect(d_07, SIGNAL(DetiInfo(QString)), ui->label_07, SLOT(setText(QString)));
   QObject::connect(d_08, SIGNAL(DetiInfo(QString)), ui->label_08, SLOT(setText(QString)));
   QObject::connect(d_09, SIGNAL(DetiInfo(QString)), ui->label_09, SLOT(setText(QString)));
   QObject::connect(d_10, SIGNAL(DetiInfo(QString)), ui->label_10, SLOT(setText(QString)));
   QObject::connect(d_11, SIGNAL(DetiInfo(QString)), ui->label_11, SLOT(setText(QString)));
   QObject::connect(d_12, SIGNAL(DetiInfo(QString)), ui->label_12, SLOT(setText(QString)));
   QObject::connect(d_13, SIGNAL(DetiInfo(QString)), ui->label_13, SLOT(setText(QString)));
   QObject::connect(d_14, SIGNAL(DetiInfo(QString)), ui->label_14, SLOT(setText(QString)));
   QObject::connect(d_15, SIGNAL(DetiInfo(QString)), ui->label_15, SLOT(setText(QString)));
   QObject::connect(d_16, SIGNAL(DetiInfo(QString)), ui->label_16, SLOT(setText(QString)));
   QObject::connect(d_17, SIGNAL(DetiInfo(QString)), ui->label_17, SLOT(setText(QString)));
   QObject::connect(d_18, SIGNAL(DetiInfo(QString)), ui->label_18, SLOT(setText(QString)));
   QObject::connect(d_19, SIGNAL(DetiInfo(QString)), ui->label_19, SLOT(setText(QString)));
   QObject::connect(d_20, SIGNAL(DetiInfo(QString)), ui->label_20, SLOT(setText(QString)));
}
 
 
 
 
 
 
Widget::~Widget()
{
   delete d_01, d_02, d_03, d_04, d_05;
   delete d_06, d_07, d_08, d_09, d_10;
   delete d_11, d_12, d_13, d_14, d_15;
   delete d_16, d_17, d_18, d_19, d_20;
 
   delete ui;
}
 
 
 
 
 
 
 
// кнопка Start
void Widget::MyEventStart()
{
   tarelka = 100;
 
   d_01->start();
   d_02->start();
   d_03->start();
   d_04->start();
   d_05->start();
   d_06->start();
   d_07->start();
   d_08->start();
   d_09->start();
   d_10->start();
   d_11->start();
   d_12->start();
   d_13->start();
   d_14->start();
   d_15->start();
   d_16->start();
   d_17->start();
   d_18->start();
   d_19->start();
   d_20->start();
 
}
 
 
 
 
 
void Widget::TarelkaView()
{
 
  ui->label_mama->setText(QString::number(tarelka));
 
}
 
 
 
 
 
void Widget::MamaWork()
{
   static int cx = 0;
 
   if(tarelka == 0) tarelka = 100;
 
   ui->label_22->setText(QString::number(++cx));
}
 
 

Код
C++ (Qt)
void detki::run()
{
   this->setPriority(QThread::IdlePriority); // приоритет потока
 
 
   while(1)
   {
 
       for (int i = 0; i < 20; i++)
       {
           emit DetiInfo(QString::number(i));
           this->msleep(appetit);
       }
 
       emit TarelkaInfo();
 
       if(tarelka > 0) tarelka--;
       else emit MamaHelp();
 
   }
 
   exec();
}


« Последнее редактирование: Ноябрь 29, 2014, 02:57 от Alexu007 » Записан
Satansoft
Гость
« Ответ #52 : Ноябрь 29, 2014, 03:22 »

В Qt, если класс не порождать ни от какого из классов Qt, а сделать его "чистым", то компилятор, естественно, не понимает объявления сигналов-слотов, как это исправить?
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #53 : Ноябрь 29, 2014, 04:09 »

В Qt, если класс не порождать ни от какого из классов Qt, а сделать его "чистым", то компилятор, естественно, не понимает объявления сигналов-слотов, как это исправить?

чтобы класс мог отсылать сигналы и принимать их он должен наследоваться от QObject
Записан

Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #54 : Ноябрь 29, 2014, 10:46 »

Некошерно, но мне плевать.
Будете продолжать в том же духе - перестану отвечать

Код
C++ (Qt)
   QObject::connect(d_01, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_02, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
   QObject::connect(d_03, SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
...
 
Так писать - себя не уважать.

Код
C++ (Qt)
       if(tarelka > 0) tarelka--;
       else emit MamaHelp();
}
Так вот, люмпен-пролетарий, это НЕ будет работать правильно, счетчик tarelka окажется отрицательным. Почему - разберетесь, а то расплевались тут
Записан
Alexu007
Гость
« Ответ #55 : Ноябрь 29, 2014, 11:55 »

Так писать - себя не уважать.
Ну а как? Это не я задачу придумал с двадцатью процессами... кстати, процессор они практически не грузят, что даже удивительно.

А чего разбираться? Всё работает. Как часы (что тоже сюрприз...). В минус ничего не уходит. Проверяйте.
« Последнее редактирование: Ноябрь 29, 2014, 12:16 от Alexu007 » Записан
Satansoft
Гость
« Ответ #56 : Ноябрь 29, 2014, 13:38 »

Вопрос с объявлением указателя решился убиранием цикличности хедеров, вопрос краша на старте решился инициализацией указателя, черт его дери (ну сколько можно повторять про выделение памяти...), однако ошибка runtime library следующего содержания:
Цитировать
Invalid parameter passed to C runtime function.
Invalid parameter passed to C runtime function.
terminate called after throwing an instance of 'std::system_error'
  what():  Invalid argument
QObject::killTimers: timers cannot be stopped from another thread

намекает на проблемы интеграции С++11 и возможно, где-то надобно память выделить, но не факт...
Записан
Alexu007
Гость
« Ответ #57 : Ноябрь 30, 2014, 15:51 »

Код
C++ (Qt)
Widget::Widget(QWidget *parent) :
   QWidget(parent),
   ui(new Ui::Widget)
{
   ui->setupUi(this);
 
   d_01 = new detki(50);   dd[0] = d_01;
   d_02 = new detki(60);   dd[1] = d_02;
   d_03 = new detki(70);   dd[2] = d_03;
   d_04 = new detki(80);   dd[3] = d_04;
   d_05 = new detki(90);   dd[4] = d_05;
   d_06 = new detki(100);  dd[5] = d_06;
   d_07 = new detki(110);  dd[6] = d_07;
   d_08 = new detki(120);  dd[7] = d_08;
   d_09 = new detki(130);  dd[8] = d_09;
   d_10 = new detki(140);  dd[9] = d_10;
   d_11 = new detki(150); dd[10] = d_11;
   d_12 = new detki(160); dd[11] = d_12;
   d_13 = new detki(170); dd[12] = d_13;
   d_14 = new detki(180); dd[13] = d_14;
   d_15 = new detki(190); dd[14] = d_15;
   d_16 = new detki(200); dd[15] = d_16;
   d_17 = new detki(210); dd[16] = d_17;
   d_18 = new detki(220); dd[17] = d_18;
   d_19 = new detki(230); dd[18] = d_19;
   d_20 = new detki(240); dd[19] = d_20;
 
 
   QObject::connect(ui->phButton_01, SIGNAL(clicked()), this, SLOT(MyEventStart()));
 
 
   for(int i = 0; i < 20; i++)
       {
       QObject::connect(dd[i], SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
       QObject::connect(dd[i], SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
       }
 
 
   QObject::connect(dd[0], SIGNAL(DetiInfo(QString)), ui->label_01, SLOT(setText(QString)));
   QObject::connect(dd[1], SIGNAL(DetiInfo(QString)), ui->label_02, SLOT(setText(QString)));
   QObject::connect(d_03, SIGNAL(DetiInfo(QString)), ui->label_03, SLOT(setText(QString)));
   QObject::connect(d_04, SIGNAL(DetiInfo(QString)), ui->label_04, SLOT(setText(QString)));
   QObject::connect(d_05, SIGNAL(DetiInfo(QString)), ui->label_05, SLOT(setText(QString)));
   QObject::connect(d_06, SIGNAL(DetiInfo(QString)), ui->label_06, SLOT(setText(QString)));
   QObject::connect(d_07, SIGNAL(DetiInfo(QString)), ui->label_07, SLOT(setText(QString)));
   QObject::connect(d_08, SIGNAL(DetiInfo(QString)), ui->label_08, SLOT(setText(QString)));
   QObject::connect(d_09, SIGNAL(DetiInfo(QString)), ui->label_09, SLOT(setText(QString)));
   QObject::connect(d_10, SIGNAL(DetiInfo(QString)), ui->label_10, SLOT(setText(QString)));
   QObject::connect(d_11, SIGNAL(DetiInfo(QString)), ui->label_11, SLOT(setText(QString)));
   QObject::connect(d_12, SIGNAL(DetiInfo(QString)), ui->label_12, SLOT(setText(QString)));
   QObject::connect(d_13, SIGNAL(DetiInfo(QString)), ui->label_13, SLOT(setText(QString)));
   QObject::connect(d_14, SIGNAL(DetiInfo(QString)), ui->label_14, SLOT(setText(QString)));
   QObject::connect(d_15, SIGNAL(DetiInfo(QString)), ui->label_15, SLOT(setText(QString)));
   QObject::connect(d_16, SIGNAL(DetiInfo(QString)), ui->label_16, SLOT(setText(QString)));
   QObject::connect(d_17, SIGNAL(DetiInfo(QString)), ui->label_17, SLOT(setText(QString)));
   QObject::connect(d_18, SIGNAL(DetiInfo(QString)), ui->label_18, SLOT(setText(QString)));
   QObject::connect(d_19, SIGNAL(DetiInfo(QString)), ui->label_19, SLOT(setText(QString)));
   QObject::connect(d_20, SIGNAL(DetiInfo(QString)), ui->label_20, SLOT(setText(QString)));
}

1. Как засунуть в цикл "d_01 = new detki(50);   dd[0] = d_01;"?

   "dd[j] =  new detki(j*10 + 50);" - не работает...

2. Как засунуть в цикл разные label ы?
« Последнее редактирование: Ноябрь 30, 2014, 15:55 от Alexu007 » Записан
Alexu007
Гость
« Ответ #58 : Декабрь 01, 2014, 10:28 »



Код
C++ (Qt)
Widget::Widget(QWidget *parent) :
   QWidget(parent),
   ui(new Ui::Widget)
{
   ui->setupUi(this);
 
   d_01 = new detki(50);   dd[0] = d_01;   lb[0] = ui->label_01;
   d_02 = new detki(60);   dd[1] = d_02;   lb[1] = ui->label_02;
   d_03 = new detki(70);   dd[2] = d_03;   lb[2] = ui->label_03;
   d_04 = new detki(80);   dd[3] = d_04;   lb[3] = ui->label_04;
   d_05 = new detki(90);   dd[4] = d_05;   lb[4] = ui->label_05;
   d_06 = new detki(100);  dd[5] = d_06;   lb[5] = ui->label_06;
   d_07 = new detki(110);  dd[6] = d_07;   lb[6] = ui->label_07;
   d_08 = new detki(120);  dd[7] = d_08;   lb[7] = ui->label_08;
   d_09 = new detki(130);  dd[8] = d_09;   lb[8] = ui->label_09;
   d_10 = new detki(140);  dd[9] = d_10;   lb[9] = ui->label_10;
   d_11 = new detki(150); dd[10] = d_11;  lb[10] = ui->label_11;
   d_12 = new detki(160); dd[11] = d_12;  lb[11] = ui->label_12;
   d_13 = new detki(170); dd[12] = d_13;  lb[12] = ui->label_13;
   d_14 = new detki(180); dd[13] = d_14;  lb[13] = ui->label_14;
   d_15 = new detki(190); dd[14] = d_15;  lb[14] = ui->label_15;
   d_16 = new detki(200); dd[15] = d_16;  lb[15] = ui->label_16;
   d_17 = new detki(210); dd[16] = d_17;  lb[16] = ui->label_17;
   d_18 = new detki(220); dd[17] = d_18;  lb[17] = ui->label_18;
   d_19 = new detki(230); dd[18] = d_19;  lb[18] = ui->label_19;
   d_20 = new detki(240); dd[19] = d_20;  lb[19] = ui->label_20;
 
   for(int i = 0; i < 20; i++)
   {
       QObject::connect(dd[i], SIGNAL(TarelkaInfo()), this, SLOT(TarelkaView()));
       QObject::connect(dd[i], SIGNAL(MamaHelp()), this, SLOT(MamaWork()));
       QObject::connect(dd[i], SIGNAL(DetiInfo(QString)), lb[i], SLOT(setText(QString)));
   }
 
   QObject::connect(ui->phButton_01, SIGNAL(clicked()), this, SLOT(MyEventStart()));
}

Всё решил сам. Всем спасибо.
Записан
Bepec
Гость
« Ответ #59 : Декабрь 01, 2014, 11:31 »

Совет всё же пересмотреть свой подход к коду, слишком он...
Записан
Страниц: 1 2 3 [4] 5   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.314 секунд. Запросов: 23.