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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: ждать введения данных  (Прочитано 3650 раз)
Sacha
Гость
« : Декабрь 04, 2009, 13:01 »

Есть цикл:   

      for (int i=0;i<TargetNum;i++)
         {
            
            mes *frm = new mes;
            frm->show();

            qstrncpy(TargetAppName, ui.lineEdit -> text().toAscii().constData(), 127);
            qstrncpy(TargetQMName, ui.lineEdit_1 -> text().toAscii().constData(), 127);
            strcpy(Targets.Targets.TargetApp,TargetAppName);
            strcpy(Targets.Targets.TargetQM,TargetQMName);

         }
Как сделать,чтобы после вызава формы (frm) цикл дальше не выполнялся пока на форме(frm) не будет нажата кнопка?
Записан
BRE
Гость
« Ответ #1 : Декабрь 04, 2009, 13:04 »

Код
C++ (Qt)
for (int i=0;i<TargetNum;i++)
{
mes *frm = new mes;
frm->exec();
 
qstrncpy(TargetAppName, ui.lineEdit -> text().toAscii().constData(), 127);
qstrncpy(TargetQMName, ui.lineEdit_1 -> text().toAscii().constData(), 127);
strcpy(Targets.Targets[i].TargetApp,TargetAppName);
strcpy(Targets.Targets[i].TargetQM,TargetQMName);
 
}
 
Записан
Sacha
Гость
« Ответ #2 : Декабрь 04, 2009, 13:48 »

Error   1   error C2039: 'exec' : is not a member of 'mes'   ...\Projects\TST\TST\tst.cpp   132   
Записан
BRE
Гость
« Ответ #3 : Декабрь 04, 2009, 13:53 »

Error   1   error C2039: 'exec' : is not a member of 'mes'   ...\Projects\TST\TST\tst.cpp   132   

А ты mes наследуй от QDialog.
Записан
Sacha
Гость
« Ответ #4 : Декабрь 04, 2009, 13:59 »

понял спасибо
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #5 : Декабрь 04, 2009, 15:49 »

А удалять frm? Лучше испольбзуй объект в стеке.
Записан
MoPDoBoPoT
Гость
« Ответ #6 : Декабрь 04, 2009, 16:36 »

Ага, и создать один раз вне цикла, а в цикле только дергать за exec()  Улыбающийся
(Хотя может придется еще написать метод init(), чтобы восстаналивать исходное состояние. В общем, зависиит от задачи)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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