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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Приложение как child окно  (Прочитано 8788 раз)
pish_r
Гость
« : Декабрь 09, 2004, 03:00 »

Давайте подумаем над таким вопросом:
Как запустить какую-нить программу в окне своего приложения.
Необходимо реализовать следующее: У меня MDI Qt-приложение, хочу чтоб AbiWord запускался в моем приложенпии  как child окно.
На сайте trolltech есть либа для деланья такого под никсы, но поскольку мое приложение кросплатформенное, необходим  механизм для виндов.
Я в винтехнологиях уже устарел с тех пор как на никсы перешел, может кто идейку подскажет...
Записан
Perchilla
Гость
« Ответ #1 : Декабрь 09, 2004, 09:04 »

А если в конструкторе диалога назначить родителя, не прокатит?
Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #2 : Декабрь 09, 2004, 12:50 »

а есть реализация AbiWord под Windows?
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
pish_r
Гость
« Ответ #3 : Декабрь 09, 2004, 22:40 »

Цитата: "Perchilla"
А если в конструкторе диалога назначить родителя, не прокатит?

Какого диалога?
Вы вопрос поняли?
Есть приложение(АбиВорд, вин реализация есть, поскольку gtk), нужно его сделать чайлдным окном моего приложения.
С помощью МФС я бы решал задачу так: захватил бы окно ч/з FindWindow(), метод возвращает указатель на окно, этому окну дал бы родителя. Возможен ли захват окон методами Qt ?
Записан
Perchilla
Гость
« Ответ #4 : Декабрь 10, 2004, 08:47 »

Я так понимаю, что на API можно, раз уж окно виндовое.
Код:
HWND SetParent(HWND hWndChild, HWND hWndNewParent);
Записан
Anonymous
Гость
« Ответ #5 : Декабрь 10, 2004, 20:02 »

Цитата: "Perchilla"
Я так понимаю, что на API можно, раз уж окно виндовое.
Код:
HWND SetParent(HWND hWndChild, HWND hWndNewParent);

Проблема в захвате окна и привидению ее к типу QWidget
Записан
Sergeich
Гость
« Ответ #6 : Декабрь 10, 2004, 20:57 »

Попробуй использовать QWinHost::setWindow( HWND window )
( Qt Solutions, Qt/MFC Migration Framework )
Документация здесь : http://doc.trolltech.com/solutions/qtwinmigrate/qwinhost.html
Download : http://hardclub.donntu.edu.ua/projects/qt/components/qtsol.htm
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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