यदि सभी तीन स्वतंत्र अनुप्रयोग क्यूटी के साथ लिखे गए हैं, और आपके पास उनका स्रोत है, तो आप क्यूटी में जीयूआई वस्तुओं के parenting के माध्यम से उन्हें एकजुट करने में सक्षम होना चाहिए।
http://qt-project.org/doc/qt-4.8/objecttrees.html
http://qt-project.org/doc/qt-4.8/widgets-and-layouts.html
http://qt-project.org/doc/qt-4.8/mainwindows-mdi.html
आपको लगता है कि रास्ते में उन तक पहुंच नहीं है, तो क्या आप के बारे में बात कर रहे 3 पार्टी विंडो प्रबंधन की तरह है। यह विंडोज एक्सप्लोरर की तरह एक खोल लिखने जैसा है, जो राज्य और अन्य विंडो अनुप्रयोगों के आकार में हेरफेर करता है।
विंडोज़ के लिए जासूस ++ या ऑटोआईट जासूस जैसे प्रोग्राम और अन्य ओएस के लिए समान प्रोग्राम का उपयोग करें, और अपनी खिड़कियों की पहचान करने वाले चिह्नों को सीखें जिन्हें आप नियंत्रित करना चाहते हैं, जैसे वर्ग, विंडो शीर्षक आदि।या आप खुद को QProcess::startDetached()
चीज़ में exe लॉन्च कर सकते हैं।
http://qt-project.org/doc/qt-5.1/qtcore/qprocess.html#startDetached
उसके बाद OS निर्भर कॉल खिड़कियों पर नियंत्रण का उपयोग कर। क्यूटी लाइब्रेरी में यह सामान तीसरे पक्ष की खिड़कियों के लिए नहीं बनाया गया है, केवल आपके द्वारा लॉन्च किए गए QAplication के तहत। ऑटोहॉटकी, या एएचके द्वारा इस तरह की चीजों को करने के कई उदाहरण हैं। यह एक स्क्रिप्टिंग भाषा है जो विंडोज वातावरण में बहुत सी चीजों को स्वचालित करने के लिए बनाई गई है, और मैक के लिए पोर्ट भी है (हालांकि मैंने मैक पोर्ट को स्वयं नहीं देखा है)।
तो अंत में आप इस तरह एक फोन के साथ शायद अपनी खिड़की खोजने पर देख रहे हैं:
#include <windows.h>
HWND hwnd_1 = ::FindWindow("Window_Class", "Window Name");
LONG retVal = GetWindowLongA(hwnd_1, GWL_STYLE); // to query the state of the window
फिर तो जैसे स्थिति और खिड़की के राज्य में हेरफेर:
::MoveWindow(hwnd_1, x, y, width, height, TRUE);
::ShowWindow(hwnd_1, SW_SHOWMAXIMIZED);
आप कर सकते हैं यहां तक कि उन विंडो के शीर्ष पर विजेट भी खींचें जिन्हें आप नियंत्रित कर रहे हैं यदि आप खिड़कियों के लिए अपनी खिड़की झंडे को सही तरीके से सेट करते हैं।
transparent QLabel with a pixmap
Cannot get QSystemTrayIcon to work correctly with activation reason
कुछ gotchas है कि जब यह सब करने के लिए Windows में आने, विंडोज यूआई की विचित्रता जानने है, जब वे प्रदर्शन आप क्या उम्मीद से अलग स्केलिंग निर्धारित करते हैं, और अगर आप टास्क बार के साथ अच्छा खेलना चाहते हैं, और अपने प्रोग्राम की सभी मोडल विंडो को संभालना चाहते हैं जो आप जोड़ रहे हैं।
तो कुल मिलाकर, यह सक्षम है। क्यूटी इन आदेशों को करने के लिए एक अच्छा इंटरफ़ेस बनाएगा, लेकिन अंत में आप इसे एक सुंदर, भरोसेमंद, विंडो प्रबंधक में लाने के लिए बहुत सारे काम और डिबगिंग देख रहे हैं।
आशा है कि मदद करता है।
सबसे पहले धन्यवाद, मुझे जवाब दें, मुझे लगता है कि कोई भी मुझे जवाब दे सकता है। मुझे स्रोत कोड तक पहुंच नहीं है। 2 प्रश्न: QWidget :: createWindowContainer() के बारे में आप क्या जानते हैं; समारोह, क्या यह सब काम कर सकता है? 2. यदि आपके समाधान के लिए खिड़कियों के लिए बहुत सारे पोर्टिंग की आवश्यकता है - शायद यह लायक नहीं है - एक छोटा सा समाधान विंडोज़ के लिए .NET में ऐप लिखना है और मुझे लिनक्स-उबंटू के बारे में पता नहीं है? – RRR
मैंने पहले 'createWindowContainer' का उपयोग नहीं किया है। ऐसा लगता है कि यह किसी भी प्रकार के 'क्यूविंडो' को अपग्रेड करने के लिए एक शॉर्टकट है, जैसे कि दृश्यग्राफ या क्यूटी क्विक या ओपनजीएल विंडो, जिसमें एक पूर्ण खिड़की सजावट है जो अन्य QWidgets के साथ काम करती है। ऐसा लगता है कि यह किसी भी एचडब्ल्यूएनडी आईडी को नहीं ले सकता है ... http://blog.qt.digia.com/blog/2013/02/19/introducing-qwidgetcreatewindowcontainer/ – phyatt
विंडोज़ हैंडलिंग करना बहुत मुश्किल नहीं है। यह अनुसंधान और काम करता है, लेकिन विंडोज़ में उठने और उन्हें छेड़छाड़ करने में कुछ घंटों से ज्यादा समय नहीं लगना चाहिए। मैंने इसे अभी तक लिनक्स और ओएसएक्स में नहीं किया है, लेकिन यह सिर्फ सही कॉल करने की बात होनी चाहिए। – phyatt