Схема такая: есть главное окно приложения, и подчиненные окна: окно настроек, или окно результатов запроса на сервер, это соответственно члены класса главного окна. Допустим послали запрос из главного окна на сервер, а результат выводиться в окно результатов. В окне результатов таблица, из таблицы можно проводить сортировку, путем отправки запроса на сервер, а сетевое взаимодействие организовано через член главного окна.
Соответственно возникает проблема отлова евентов окна результатов для главного окна, или вызова процедур главного окна, для передачи данных по сети.
Организация взаимодействия межд Topic is solved
-
- Earned some good credits
- Posts: 111
- Joined: Wed Jul 30, 2008 8:01 am
- Location: Russia/MO
- Contact:
Организация взаимодействия межд
win xp sp2; CodeBlocks/mingw/wxWidgets 2.8.9/wxFormBuilder
web-программирование:PHP,js/Ajax
web-программирование:PHP,js/Ajax
- T-Rex
- Moderator
- Posts: 1249
- Joined: Sat Oct 23, 2004 9:58 am
- Location: Zaporizhzhya, Ukraine
- Contact:
Вобще не понимаю, каким образом главное окно шлет запрос на сервер? У тебя дочерние окна имеют свои сокеты?
Вынеси логику для взаимодействия с сервером в отдельный класс, все данные, которые получаешь с сервера, храни в нем, а GUI будет просто отображать содержимое. Для класса логики сделай синглтон и все, доступ отовсюду с любых форм.
Вынеси логику для взаимодействия с сервером в отдельный класс, все данные, которые получаешь с сервера, храни в нем, а GUI будет просто отображать содержимое. Для класса логики сделай синглтон и все, доступ отовсюду с любых форм.
-
- Earned some good credits
- Posts: 111
- Joined: Wed Jul 30, 2008 8:01 am
- Location: Russia/MO
- Contact:
По сетевому взаимодействию:у главного окна есть члены класса wxSocketClient через него и работаем. Нажимаю кнопку в главном окне - соединяюсь,передаю данные, получаю данные, отсоединяюсь. В этом обработчике же события создаю фрейм результатов, отображаю в нем.
А дочерние окна ничего не имеют так как в этом то и загвоздка - не пойму как правильно делать.
Значит подобную схему можно реализовать через глобальные переменные(Сетевое взаимодействие, главное окно, окно результатов). Я правильно понимаю, что из обработчиков событий окон мне нужно будет обращаться в глобальный объект, который отвечает за сетевое взаимодействие, который в свою очередь будет обращаться из своих обработчиков в эти оба окна?
А дочерние окна ничего не имеют так как в этом то и загвоздка - не пойму как правильно делать.
Значит подобную схему можно реализовать через глобальные переменные(Сетевое взаимодействие, главное окно, окно результатов). Я правильно понимаю, что из обработчиков событий окон мне нужно будет обращаться в глобальный объект, который отвечает за сетевое взаимодействие, который в свою очередь будет обращаться из своих обработчиков в эти оба окна?
win xp sp2; CodeBlocks/mingw/wxWidgets 2.8.9/wxFormBuilder
web-программирование:PHP,js/Ajax
web-программирование:PHP,js/Ajax
- T-Rex
- Moderator
- Posts: 1249
- Joined: Sat Oct 23, 2004 9:58 am
- Location: Zaporizhzhya, Ukraine
- Contact:
можно и не глобальный объект. Вот например у тебя в главном окне есть член класса - твой сокет. Ну возьми в дочернем окне тоже сделай член класса - указатель на сокет и после создания присвой этому указателю адрес члена класса из главного окна. и все, сможешь пользовать из дочернего в свое удовольствие