2008-11-25 15 views
19

QMainWindow एक क्यूटी आवेदन में मुख्य विंडो है। तो आमतौर पर आपके पास केवल एक ही होगा, लेकिन क्या आपके आवेदन में कई QMainWindow उदाहरण होने चाहिए?एकाधिक QMainWindow उदाहरण?

मैं एक क्यूटी आधारित जीयूआई आवेदन एक में एक क्यूटी आधारित जीयूआई आवेदन बी एकीकरण पर काम कर रहा हूँ

। इन दोनों अनुप्रयोगों एक QMainWindow है, और मुझे एक पहला कदम एक नई QMainWindow दोनों पुराने QMainWindows टैब पर है कि बनाने के लिए के रूप में विचार कर रहा था। इस तरह यह मेरे यूजर इंटरफेस अपने आप में कुछ भी बदलने के बिना एक के बैकएंड के लिए जीयूआई बी की बैकएंड तारों पर ध्यान केंद्रित करने की अनुमति होगी। क्या यह एक व्यवहार्य दृष्टिकोण है, या आपके पास अन्य सुझाव हैं?

+0

मैं एक काफी इसी तरह की स्थिति है, जहां मैं 2 QMainWindows की जरूरत में हूँ। यदि आप इस मार्ग पर गए हैं, तो क्या आपके पास @ कैलेब-हुट-सीजुइट द्वारा बताई गई चेतावनी का उत्तर है, मैक पर मेनू बार के साथ क्या होता है? –

उत्तर

28

के रूप में आप जितने चाहें, उतने QMainWindow उदाहरण हो सकते हैं। एक QMainWindow सिर्फ QWidget है जो मेनू बार, टूलबार, स्टेटस बार और डॉकिंग फ्रेमवर्क प्रदान करता है। लेकिन मूल रूप से यह सिर्फ QWidget है ताकि आप जितनी चाहें उतनी हो सकें।

आम तौर पर आप केवल एक ही QMainWindow जीयूआई डिजाइन कारणों के लिए है, क्योंकि यह कई मुख्य खिड़कियों के लिए जगह भ्रमित हो सकते हैं। हालांकि, QtAssistant जैसे अनुप्रयोगों को लागू करते समय, जो स्वयं का एक नया उदाहरण खोल सकते हैं, एक प्रक्रिया में कई मुख्य विंडो होती हैं।

सुझाव क्या काम करना चाहिए। टैब के साथ विंडो को QMainWindow होने की आवश्यकता नहीं होगी जबतक कि आप उस विंडो में टूलबार भी जोड़ना नहीं चाहते हैं।

+2

एकमात्र चेतावनी जो मैं जोड़ूंगा वह यह है कि यदि आप ओएस एक्स को बंदरगाह करना चाहते हैं तो मेन्यू थोड़ा मजेदार हो सकता है। स्क्रीन के शीर्ष पर मेनू को काम करने के लिए उनके पास कुछ विशेष हैंडलिंग है, और मुझे नहीं पता कि कैसे जो एक वास्तविक खिड़की में दो मुख्य खिड़कियों के साथ काम करेगा। –

+1

यह देखते हुए कि आप एप्लिकेशन में एकाधिक QMainWindow कर सकते हैं, क्या आप एमडीआई सबविंडो के अंदर अपने डॉकिंग फ्रेमवर्क का उपयोग कर सकते हैं? क्या यह एक अच्छा अभ्यास होगा? – Anonymous

+0

@ अनाम: अच्छा विचार! – CapelliC

संबंधित मुद्दे