ट्री व्यू



एक ट्री व्यू एक ग्राफिकल यूज़र इंटरफ़ेस  (जीयूआई) के भीतर एक ग्राफिकल विजेट (ग्राफिकल कंट्रोल एलीमेंट) है जिसमें उपयोगकर्ता नेविगेट कर सकते हैं और संक्षिप्त, पदानुक्रम के साथ सहजता से बातचीत कर सकते हैं # ट्री-जैसे प्रारूप में नोड्स के रूप में प्रस्तुत पदानुक्रम डेटा।  इसे रूपरेखा दृश्य भी कह सकते हैं।

सूरत
ट्री व्यू आमतौर पर पेड़ जैसी संरचना में व्यवस्थित नोड (कंप्यूटर विज्ञान) की एक लंबवत सूची होती है। प्रत्येक नोड एक डेटा आइटम का प्रतिनिधित्व करता है, जो टेक्स्ट की इंडेंट लाइन या आयताकार बॉक्स के रूप में प्रदर्शित होता है। पदानुक्रम के स्तरों को इंगित करने के लिए इंडेंटेशन (और कभी-कभी नोड्स के बीच खींची गई रेखा) का उपयोग किया जाता है। प्रत्येक वृक्षदृश्य में रूट नोड होता है जिससे सभी नोड उतरते हैं। रूट नोड के नीचे और दाईं ओर इंडेंट इसके चाइल्ड नोड हैं। प्रत्येक नोड में बिल्कुल एक पैरेंट नोड होता है और इसमें शून्य या अधिक चाइल्ड नोड हो सकते हैं। यदि एक नोड (रूट नोड के अलावा) में एक बच्चा या बच्चे हैं, तो इसे शाखा नोड कहा जाता है। यदि इसकी कोई संतान नहीं है, तो यह लीफ नोड है। यह एक पदानुक्रमित वृक्ष जैसी संरचना बनाता है, जिसमें शाखाएं और उपशाखाएं नीचे और दाईं ओर उभरती हैं। पैरेंट नोड्स और चाइल्ड नोड्स के बीच नेस्टेड रिलेशनशिप को दर्शाने के लिए नोड्स को अलग-अलग रंगों, आइकन और फोंट से अलग किया जा सकता है। उप-आइटम, यदि कोई मौजूद है, प्रकट करने के लिए एक आइटम का विस्तार किया जा सकता है, और उप-आइटम को छिपाने के लिए संक्षिप्त किया जा सकता है।

अन्तरक्रियाशीलता
ट्री व्यू उपयोगकर्ताओं को विभिन्न तरीकों से पदानुक्रमित डेटा के साथ इंटरैक्ट करने की अनुमति देता है, जैसे:
 * अपने बच्चे के नोड्स को प्रकट करने या छिपाने के लिए नोड्स का विस्तार और पतन करना और इस प्रकार पेड़ की संरचना के माध्यम से किसी की जरूरतों के अनुसार नेविगेट करना।
 * तिथि जैसे विशिष्ट मानदंडों के आधार पर नोड्स खोजें और फ़िल्टर करें।
 * संदर्भ मेनू का उपयोग करके नाम बदलना या हटाना।
 * नोड्स को पुनर्व्यवस्थित करने के लिए उन्हें पेड़ के अन्य वर्गों में कॉपी करना और ले जाना (खींचना और गिराना)।
 * एक अलग विंडो में एक नोड खोलना।

अनुकूलनशीलता
दृश्य अपील और दक्षता के लिए ट्री व्यू को निम्नलिखित तरीकों से अनुकूलित किया जा सकता है:
 * इनपुट पद्धतियां: माउस, कीबोर्ड और स्पर्श इनपुट जैसे विभिन्न इनपुट विधियों का समर्थन करने के लिए ट्री व्यू को अनुकूलित किया जा सकता है ताकि उपयोगकर्ता अपनी पसंदीदा विधि का उपयोग करके बातचीत कर सकें। उपयोगकर्ता इसे चुनने के लिए नोड पर क्लिक करने के लिए अपने माउस का उपयोग कर सकते हैं, अपने माउस को खींचने के लिए ले जा सकते हैं और फिर माउस बटन को नोड्स को पुनर्व्यवस्थित करने के लिए छोड़ सकते हैं। वे ट्री के साथ नेविगेट करने और इंटरैक्ट करने के लिए कीबोर्ड शॉर्टकट का भी उपयोग कर सकते हैं।
 * देखो और महसूस करो: डेवलपर्स (और कभी-कभी उपयोगकर्ता) कुछ अनुप्रयोगों की विशिष्ट दृश्य आवश्यकताओं से मेल खाने के लिए वृक्ष दृश्यों के रूप और अनुभव को अनुकूलित कर सकते हैं। नोड्स, एनिमेशन और प्रभाव प्रदर्शित करने के लिए उपयोग किए जाने वाले चिह्न, फ़ॉन्ट और रंग नोड विस्तार और पतन का प्रतिनिधित्व करने के लिए, और ड्रैग एंड ड्रॉप क्रियाओं के लिए कस्टम व्यवहार लागू किए जा सकते हैं। संदर्भ मेनू विकल्पों को किसी एप्लिकेशन के लिए अनुकूलित किया जा सकता है ताकि उपयोगकर्ता केवल नोड्स पर विशिष्ट क्रियाएं कर सकें।
 * अभिगम्यता : वृक्ष दृश्य विकलांग उपयोगकर्ताओं के लिए अभिगम्यता सुविधाओं की पेशकश कर सकते हैं।

लाभ
वृक्ष दृश्य निम्नलिखित लाभ प्रदान करते हैं:
 * वे पदानुक्रमित डेटा को एक संक्षिप्त और आसान-से-अनुसरण प्रारूप में प्रदर्शित करते हैं, ताकि उपयोगकर्ता आसानी से डेटा के माध्यम से चल सकें और बातचीत कर सकें।
 * वे अनुकूलन योग्य हैं, इसलिए उनकी उपस्थिति और व्यवहार को किसी एप्लिकेशन की विशिष्ट आवश्यकताओं को पूरा करने के लिए तैयार किया जा सकता है।
 * वे इंटरैक्टिव हैं और विभिन्न इनपुट विधियों के उपयोग की अनुमति देते हैं।
 * वे लचीले और शक्तिशाली नौवहन उपकरण हैं जिनका उपयोग विभिन्न प्रकार के अनुप्रयोगों में किया जा सकता है (जैसे फ़ाइल प्रबंधक)

नुकसान

 * यदि वस्तुओं के नेस्टेड या श्रेणीबद्ध संबंध पर जोर नहीं दिया जाता है, तो ट्री व्यू इष्टतम विकल्प नहीं होगा। एक नियमित सूची अधिक उपयुक्त होगी।
 * बड़ी मात्रा में डेटा या गहराई से नेस्टेड पदानुक्रमों के लिए, पेड़ के दृश्य नेत्रहीन रूप से अव्यवस्थित और नेविगेट करने में मुश्किल हो सकते हैं, जिससे अक्षमता और उत्पादकता में कमी आती है क्योंकि उपयोगकर्ता डेटा के साथ काम करने की तुलना में संरचना के माध्यम से चलने में अधिक समय व्यतीत करेंगे।
 * वे अधिक जटिल हैं और इस प्रकार सूचियों और तालिकाओं जैसी सरल संरचनाओं की तुलना में उन्हें बनाए रखना अधिक कठिन है।
 * डेवलपर्स के लिए, एनिमेशन और जटिल व्यवहारों के साथ अनुकूलन विकल्प कार्यान्वयन और डिबगिंग पर खर्च किए गए समय को बढ़ा सकते हैं।

आवेदन
ट्री व्यू का उपयोग उन स्थितियों में किया जाता है जहां पदानुक्रमित डेटा को ग्राफिकल इंटरफ़ेस में प्रदर्शित और नेविगेट करने की आवश्यकता होती है। उदाहरण के लिए, उनका उपयोग इसमें किया गया है:
 * फ़ाइल प्रबंधकों को निर्देशिका (फाइल सिस्टम) की पदानुक्रमित संरचना और कंप्यूटर फ़ाइल सिस्टम में रहने वाली फ़ाइलों को प्रदर्शित करने के लिए ताकि उपयोगकर्ता निर्देशिका ट्री को नेविगेट कर सकें और अपनी फ़ाइलों को अधिक कुशलता से खोल सकें, बंद कर सकें और प्रबंधित कर सकें।
 * ईमेल क्लाइंट ईमेल फ़ोल्डरों और संदेशों की पदानुक्रमित संरचना प्रदर्शित करने के लिए, उपयोगकर्ताओं को ईमेल संदेशों को देखने और उनका जवाब देने और उनके इनबॉक्स को प्रबंधित करने में मदद करते हैं।
 * संगठनात्मक चार्ट एक संगठन के कर्मचारियों और विभागों की श्रेणीबद्ध संरचना प्रदर्शित करने के लिए।
 * नेटवर्क टोपोलॉजी
 * ग्राफिकल अनुप्रयोगों के निर्माण के लिए प्रोग्रामिंग फ्रेमवर्क।
 * XML दस्तावेज़ पदानुक्रमित डेटा प्रस्तुत करने के लिए।
 * आउटलाइनर एप्लिकेशन (विस्तारित ट्री व्यू के रूप में), जहां प्रत्येक नोड में संपादन योग्य पाठ होता है।

यह भी देखें

 * निर्देशिका (फाइल सिस्टम) - ट्री व्यू के अनुप्रयोग का एक उदाहरण
 * फ़ाइल मैनेजर
 * वंशावली सॉफ्टवेयर

बाहरी संबंध

 * Treeview in pure HTML+CSS
 * Tree view widget in the GTK+ API
 * Tree view control in the Win32 API (MSDN)
 * Yahoo! UI Library y
 * Extended TreeView for .NET WinForms
 * TreeView Control in ASP.NET 2.0
 * Interview with Henk Hagedoorn, developer of first tree-view PIM