कस्टम विंडोज एक्सप्लोरर बनाने के लिए डेल्फी का उपयोग कैसे करें

click fraud protection

विंडोज एक्सप्लोरर आप फ़ाइलों और फ़ोल्डरों के लिए ब्राउज़ करने के लिए विंडोज ऑपरेटिंग सिस्टम में उपयोग करते हैं। आप डेल्फी के साथ एक समान संरचना बना सकते हैं ताकि आपके कार्यक्रम के उपयोगकर्ता इंटरफ़ेस के भीतर समान सामग्री आबाद हो।

डेल्फी में आम संवाद बॉक्स का उपयोग किया जाता है किसी एप्लिकेशन में फ़ाइल खोलें और सहेजें. यदि आप अनुकूलित फ़ाइल प्रबंधकों और निर्देशिका ब्राउज़िंग संवादों का उपयोग करना चाहते हैं, तो आपको फ़ाइल सिस्टम डेल्फी घटकों से निपटना होगा।

विन 3.1 वीसीएल पैलेट समूह में कई घटक शामिल हैं जो आपको अपने स्वयं के कस्टम "फाइल ओपन" या "फाइल सेव" डायलॉग बॉक्स बनाने की अनुमति देते हैं: TFileListBox, TDirectoryListBox, TDriveComboBox, तथा TFilterComboBox.

फ़ाइलों को नेविगेट करना

फ़ाइल सिस्टम घटक हमें एक ड्राइव का चयन करने की अनुमति देते हैं, एक डिस्क के पदानुक्रमित निर्देशिका संरचना को देखते हैं, और किसी दिए गए निर्देशिका में फ़ाइलों के नाम देखते हैं। फ़ाइल सिस्टम के सभी घटक एक साथ काम करने के लिए डिज़ाइन किए गए हैं।

उदाहरण के लिए, आपका कोड इस बात की जाँच करता है कि उपयोगकर्ता ने क्या किया है, ड्राइवकॉमबॉक्स कहे और फिर इस जानकारी को डायरेक्ट्रीलिस्टबॉक्स में भेज दे। DirectoryListBox में परिवर्तन तब एक FileListBox को पास किया जाता है, जिसमें उपयोगकर्ता आवश्यक फ़ाइल (फाइलों) का चयन कर सकता है।

instagram viewer

डायलॉग फॉर्म को डिजाइन करना

नया शुरू करो डेल्फी आवेदन और विन 3.1 टैब का चयन करें घटक पैलेट. फिर निम्न कार्य करें:

  • एक TFLListBox, TDirectoryListBox, TDriveComboBox और TFilterComboBox घटक को अपने सभी डिफ़ॉल्ट नामों को रखते हुए एक फ़ॉर्म पर रखें।
  • एक Tedit ("FileNameEdit नाम") और एक जोड़ें TLabel (इसे "DirLabel" कहते हैं)।
  • कैप्शन के साथ कुछ लेबल शामिल करें, जैसे "फ़ाइल का नाम," "निर्देशिका," "प्रकार की सूची फ़ाइलें," और "ड्राइव।"

वर्तमान में चयनित पथ को एक डर्लेबेल घटक कैप्शन में एक स्ट्रिंग के रूप में दिखाने के लिए, लेबल के नाम को DirectoryListBox को असाइन करें डर्लेबेल संपत्ति.

यदि आप एक EditBox (FileNameEdit) में चयनित फ़ाइलनाम प्रदर्शित करना चाहते हैं, तो आपको FileListBox के लिए ऑब्जेक्ट का नाम (FileNameEdit) संपादित करना होगा फ़ाइल संपत्ति.

कोड की अधिक लाइनें

जब आपके पास फ़ॉर्म पर सभी फ़ाइल सिस्टम घटक होते हैं, तो आपको बस DirectoryListBox सेट करना होगा। संपत्ति और FileListBox ड्राइव करें। उपयोगकर्ता को जो देखना है, उसे संवाद करने और दिखाने के लिए घटकों के लिए निर्देशिका संपत्ति।

उदाहरण के लिए, जब उपयोगकर्ता एक नई ड्राइव का चयन करता है, डेल्फी सक्रिय करता है DriveComboBox OnChange आयोजन प्रबंधकर्ता। इसे इस तरह बनाएं:

 प्रक्रिया TForm1.DriveComboBox1Change (प्रेषक: TObject);
शुरुआतDirectoryListBox1.Drive: = DriveComboBox1.Drive;
समाप्त;

यह कोड डिस्प्ले में बदलाव करता है DirectoryListBox इसकी सक्रियता से परिवर्तन पर आयोजन प्रबंधकर्ता:

 प्रक्रिया TForm1.DirectoryListBox1Change (प्रेषक: TObject);
startFileListBox1.Directory: = DirectoryListBox1.Directory;
समाप्त;

यह देखने के लिए कि उपयोगकर्ता ने किस फ़ाइल को चुना है, आपको इसका उपयोग करने की आवश्यकता है OnDblClick की घटना FileListBox:

 प्रक्रिया TForm1.FileListBox1DblClick (प्रेषक: TObject);
startShowmageage ('चयनित:' + FileListBox1.FileName);
समाप्त;

याद रखें कि विंडोज कन्वेंशन में फाइल को चुनने के लिए डबल क्लिक करना है, न कि एक क्लिक पर। यह महत्वपूर्ण है जब आप एक FileListBox के साथ काम करते हैं क्योंकि FileListBox के माध्यम से स्थानांतरित करने के लिए एक तीर कुंजी का उपयोग करते हुए आपके द्वारा लिखे गए किसी भी OnClick हैंडलर को कॉल किया जाएगा।

प्रदर्शन को फ़िल्टर करना

FileListBox में प्रदर्शित की जाने वाली फ़ाइलों के प्रकार को नियंत्रित करने के लिए FilterComboBox का उपयोग करें। FileComistBox के नाम से FilterComboBox की फाइललिस्ट संपत्ति सेट करने के बाद, फ़िल्टर संपत्ति को उन फ़ाइल प्रकारों पर सेट करें जिन्हें आप प्रदर्शित करना चाहते हैं।

यहाँ एक नमूना फिल्टर है:

 FilterComboBox1.Filter: = 'सभी फाइलें (*। *) | *। * | प्रोजेक्ट फाइलें (* .dpr) | * .dpr | पास्कल इकाइयाँ (* .pas) | * .pas ';

संकेत और सुझाव

DirectoryListBox सेट करना। संपत्ति और FileListBox ड्राइव करें। निर्देशिका संपत्ति (पूर्व लिखित OnChange घटना संचालकों में) रनटाइम पर डिजाइन समय पर भी की जा सकती है। आप निम्न गुणों (ऑब्जेक्ट इंस्पेक्टर से) को सेट करके डिजाइन समय पर इस तरह के कनेक्शन को पूरा कर सकते हैं:

DriveComboBox1.DirList: = DirectoryListBox1
DirectoryListBox1.FileList: = FileListBox1

अगर कोई मल्टीलेक्ट प्रॉपर्टी ट्रू है तो यूजर फाइल लिस्टबॉक्स में कई फाइलों का चयन कर सकते हैं। निम्न कोड दिखाता है कि FileListBox में कई चयनों की एक सूची कैसे बनाएं और इसे एक SimpleListBox (कुछ "साधारण" लिस्टबॉक्स नियंत्रण) में दिखाएं।

 var k: पूर्णांक ...
FileListBox1 के साथ करते हैं
यदि सेलेकाउंट> 0 तो
k: = 0 से आइटम के लिए। गिनती -1 करते हैं
यदि चयनित [के] तब
SimpleListBox। आइटम। जोड़ें (आइटम [के]);

पूर्ण पथ नाम प्रदर्शित करने के लिए जो एक दीर्घवृत्त के साथ छोटा नहीं किया जाता है, एक DirectoryListBox की DirLabel संपत्ति के लिए एक लेबल ऑब्जेक्ट नाम असाइन न करें। इसके बजाय, एक लेबल को एक फ़ॉर्म में डालें और अपनी कैप्शन प्रॉपर्टी को DirectoryListBox के OnChange इवेंट में DirectoryListBox में सेट करें। निर्देशिका संपत्ति।

instagram story viewer