Russian Qt Forum

Qt => Вопросы новичков => Тема начата: str_ben от Июль 25, 2016, 21:58



Название: Работа с двумя формами одновременно
Отправлено: str_ben от Июль 25, 2016, 21:58
Уважаемые форумчане, у меня есть вопрос, на который я давно не могу найти ответ (хотя вопрос очень глупый, и видимо я его неправильно формулирую). Задача вот какая: есть две формы (2 класса): Work_System и MainWindow.

На форме Work_System находятся две кнопки: 1-вызывает какое-то действие, 2-открывает другую форму (1ая при этом остается открытой).

На форме MainWindow находится одна кнопка: 3-она должна вызвать функцию, которая привязана к кнопке 1 от класса Work_system, то есть должна выполнять это же действие.

То есть получается, что в классе Work_System должен иметься экземпляр класса MainWindow, а в классе MainWindow - экземпляр класса Work_System. И между ними должна быть связь.

Как такое можно реализовать?


Название: Re: Работа с двумя формами одновременно
Отправлено: Racheengel от Июль 25, 2016, 23:46
Вынесите действие 1 в отдельный класс-контроллер.
И связывайте с ним оба гуя через сигнал-слот.


Название: Re: Работа с двумя формами одновременно
Отправлено: Igors от Июль 26, 2016, 06:09
На форме MainWindow находится одна кнопка: 3-она должна вызвать функцию, которая привязана к кнопке 1 от класса Work_system, то есть должна выполнять это же действие.
Формы, кнопки и.т.п. - это всего лишь визуализация данных. Если одно и то же действие может (или должно) вызываться из двух окон, то оба они должны иметь доступ к необходимым данным


Название: Re: Работа с двумя формами одновременно
Отправлено: Bepec от Июль 26, 2016, 10:17
А ещё можно сделать синглтон с нужным функционалом :D