पिक्चर बॉक्स कंट्रोल क्या है एवं उपयोग | वी. बी. डॉट नेट के पिक्चर बॉक्स कंट्रोल | विजुअल बेसिक में इमेज बॉक्स और पिक्चर बॉक्स में क्या अंतर है? | Picture Box Control In Hindi
पिक्चर बॉक्स कंट्रोल – पिक्चर बॉक्स कंट्रोल का उपयोग फॉर्म में मनचाहे चित्र को जोड़ने में होता है। बी.बी. 6 में पिक्चर बॉक्स कंट्रोल के बदले इमेज कंट्रोल का उपयोग होता था। इसका उपयोग आप वी. बी. डॉट नेट की सहायता से बनाये गये रेखाचित्र (Drawings) को प्रदर्शित करने में भी कर सकते हैं। पिक्चर बॉक्स कंट्रोल की सहायता से बी. एम. पी. (BMP), आइकन फाइल, जी. आई. एफ. (GIF), जे. पी. ई. जी. (JPEG) इत्यादि फॉर्मेट फाइलों के चित्र को प्रदर्शित कर सकते हैं।
1. पिक्चरबॉक्स कंट्रोल के प्रॉपर्टी (Properties of the Picture Box Control)
डिजायन समय में प्रॉपर्टीज विण्डो के माध्यम से सेट कर सकते हैं। तथा कुछ प्रॉपर्टीज विण्डो में प्रकट नहीं होते हैं उन्हें इस खण्ड में वी. बी. डॉट नेट के पिक्चरबॉक्स कंट्रोल के प्रॉपर्टी के बारे में जानते हैं। इनमें कुछ प्रॉपर्टी ऐसे हैं जो आप रन समय में कोड के माध्यम से सेट कर सकते हैं। यद्यपि सभी प्रॉपर्टी को प्रोग्राम के माध्यम से कोड लिखकर सेट किया जा सकता है।
ErrorImage – इमेज को लोड होने की प्रक्रिया के दौरान त्रुटि आने की स्थिति में या इमेज लोड के रद्द होने की स्थिति में डिस्प्ले होने वाले इमेज को सेट करता है।
SizeMode – – इस प्रॉपर्टी के अंदर चार विकल्प उपलब्ध होते हैं। ये Normal, StretchImage, AutoSize, CenterImage तथा Zoom हैं। AutoSize के चयन करने पर पिक्चरबॉक्स कंट्रोल का आकार इसमें कंट्रोल से बड़ी होने की स्थिति में वह चित्र पिक्चरबॉक्स कंट्रोल के केन्द्र में स्थित हो जाता है तथा जोड़े गये चित्र के अनुसार होगा। CenterImage का चयन यदि आप करते हैं तो चित्र पिक्चरबॉक्स। पिक्चर का बाहरी किनारा कट जाता है। यदि इमेज कंट्रोल से छोटी है तब यह कंट्रोल के केन्द्र में स्थित होता है।
यदि पिक्चरबॉक्स कंट्रोल से चित्र बड़ी है तो यह विकल्प ठीक नहीं क्योंकि इससे पिक्चर के किनारे कटने के कारण पूरा चित्र प्रकट नहीं हो पाता है। Normal का उपयोग तब करें के उपरी बायें कोने पर आकृति को स्थित करना चाहते हैं। इसमें भी बड़ी है तो इसका कुछ भाग कट जाता है। इसमें CentreImage के अपेक्षाकृत चित्र का मुख्य भाग भी कट सकता है।
StretchImage का चयन तब करें जब चित्र को किसी भी परिस्थिति में पिक्चरबॉक्स कंट्रोल में समाना चाहते हैं। इसमें पिक्चर का आकार फैल या सिकुड़ सकता है जो पिक्चरबॉक्स कंट्रोल के आकार पर निर्भर करता है। Zoom के चयन करने पर चित्र का आकार एक नियत अनुपात में पिक्चरबॉक्स कंट्रोल के साथ बढ़ता या घटता है।
Image – उस इमेज को सेट करता है जिसे पिक्चरबॉक्स कंट्रोल पर डिस्प्ले होना होता है।
InitialImage – मुख्य इमेज के लोड होने के दौरान पिक्चरबॉक्स कंट्रोल में डिस्प्ले होने वाले इमेज को सेट करता है।TabIndex – टैब इंडेक्स मान को सेट करता है।
WaitOnLoad – उस मान को सेट करता है जो यह बताता है कि इमेज सिंक्रोनसली (synchronously) लोड होता है अथवा नहीं।
पिक्चर बॉक्स कंट्रोल क्या होता है एवं उपयोग | ग्रुपबॉक्स कंट्रोल का वर्णन करें । विजुअल बेसिक में पिक्चर कैसे डालते हैं? | How To Make Picturebox Transparent In Vb.Net
2. पिक्चरबॉक्स कंट्रोल के मेथड (Methods of the PictureBox Control)
इस खण्ड में हम पिक्चरबॉक्स कंट्रोल के मेथडों पर चर्चा करेंगे।
CancelAsync – असिंक्रोनस (asynchronous) इमेज लोड को रद्द करता है।
Dispose – पिक्चरबॉक्स के द्वारा उपयोग किये गये सभी संसाधनों को रिलीज करता है।
Load – पिक्चरबॉक्स में इमेज को डिस्प्ले करता है।
LoadAsync – इमेज को असिंक्रोनसली लोड करता है।
3. पिक्चर बॉक्स कंट्रोल के इवेण्ट (Events of the Picture Box Control)
इस खण्ड में हम पिक्चरबॉक्स कंट्रोल के मुख्य इवेण्ट के बारे में चर्चा करेंगे।
LoadCompleted – यह इवेण्ट डॉट नेट फ्रेमवर्क संस्करण 2.0 में नया है। LoadCompleted तब ही घटित होता है जब LondAsync मेथड में से किसी का उपयोग कर इमेज को असिंक्रोनसली लोड किया जाता है तथा WaitOnLoad प्रॉपर्टी False होता है।
LoadProgress Changed – किसी असिंक्रोनस इमेज लोडिंग प्रक्रिया के बदलने पर यह घटित होता है।
Resize – पिक्चरबॉक्स के आकार के बदलने पर यह घटित होता है।
SizeModeChanged – SizeMode के बदलने पर घटित होता है।
TabIndexChanged – TabIndex प्रॉपर्टी के मान के बदलने पर
TabStopChanged – TabStop प्रॉपर्टी के मान के
4. डिजायन समय में चित्र डिस्प्ले करना (Displaying a Picture at Design Time)
विण्डोज फॉर्मूस पिक्चरबॉक्स कंट्रोल के साथ आप फॉर्म पर चित्र को लोड तथा डिस्प्ले कर सकते हैं। इसके लिए Image प्रॉपर्टी से वैध चित्र को सेट करते हैं। बिटमैप (.bmp), आइकन (.ico), जे. आई. एफ. (.gif), मेटाफाइल (.wmf), जे.पी.ई.जी. (.jpg) स्वीकारयोग्य फाइल के प्रकार हैं। डिजायन समय में चित्र को डिस्प्ले करने के लिए यह करें-
- फॉर्म पर PictureBox कंट्रोल जोड़ें।
- प्रॉपर्टीज विण्डो को F4 की दबाकर डिस्प्ले करें यदि यह उपलब्ध न हो।
- Image प्रॉपर्टी का चयन करें तथा इसके इलिपसिस बटन को क्लिक करें। तत्पश्चात् Select Resource डायलॉग बॉक्स प्रकट होगा।
- Import को क्लिक कर Open डायलॉग बॉक्स को खोलें। यदि Import बटन हाइलाइटेड न हो तो Project resource file : रेडियो बटन को पहले क्लिक करें।
- यदि आप किसी विशेष फाइल टाइप (यथा .gif फाइल) को ढूँढ़ रहे हो तो Files of type लिस्ट बॉक्स से इसका चयन करें।
- उस फाइल का चयन करें जिसे आप डिस्प्ले करना चाहते हैं। Open को क्लिक कर Open डायलॉग बॉक्स को बंद करें। उपरोक्त पदों को करने के बाद Resources नाम का एक फोल्डर आपके प्रोजेक्ट में जुड़ जाएगा जिसमें यह इमेज स्टोर होगा।
5. डिजायन समय में चित्र को हटाना (Removing the Picture At Design Time)
जब आप ऐसा अनुभव करें कि अब आपको पिक्चर बॉक्स कंट्रोल में चित्र की आवश्यकता नहीं है तो इसे डिजायन समय में पिक्चरबॉक्स से हटा सकते हैं। पिक्चरबॉक्स कंट्रोल से चित्र को हटाने के लिए यह करें-
- F4 की दबाकर प्रॉपर्टीज विण्डो को डिस्प्ले करें यदि यह स्क्रीन पर उपलब्ध न हो।
- Image प्रॉपर्टी का चयन करें तथा इमेज ऑब्जेक्ट के नाम के बायीं ओर प्रकट उस छोटे थम्बनेल इमेज को दायाँ क्लिक करें। फिर Reset का चयन करें।
उपरोक्त पदों को करने के बाद आपके पिक्चरबॉक्स कंट्रोल से वह चित्र हट जाएगा। किन्तु यह आपके प्रोजेक्ट फोल्डर में Resources फोल्डर के अंदर उलपब्ध रहता है।
6. रन समय में चित्र को डिस्प्ले करना (Displaying a Picture at Run Time)
आप चाहें तो प्रोग्राम के माध्यम से भी अपने फॉर्म पर पिक्चरबॉक्स कंट्रोल की सहायता से पिक्चर को जोड़ सकते हैं। इसके लिए यह प्रारूप है-
Name OfPicture Box Control. Image = Image.FromFile ( Name of Picture with exact location)
उदाहरण
Picture Box1.Image = Image.FromFile (“C:\image1.jpg”)
उपरोक्त कोड से पहले इसके SizeMode प्रॉपर्टी को सेट करने के लिए यह कोड जोड़ें-
Picture Box1.SizeMode = PictireBoxSizeMode.AutoSize
उपरोक्त कोड PictureBox1 के SizeMode प्रॉपर्टी को AutoSize सेट करता है
आओ अभ्यास करें –
एक विण्डोज एप्लिकेशन बानाएँ। तथा फॉर्म पर एक पिक्चर बॉक्स कंट्रोल को जोड़ें। इस पर जोड़े गये ऑब्जेक्ट प्रॉपर्टी तथा उनके मान इस प्रकार होंगे तथा इसका इंटरफेस होगा।
ऑब्जेक्ट | प्रॉपर्टी | मान |
फॉर्म | Name | Form1 |
Text | Exercise | |
पिक्चरबॉक्स | Name | PictureBox1 |
समाधान :
- File मेन्यू को क्लिक करें तथा New Project का चयन करें।
- New Project डायलॉग बॉक्स खुलने के पश्चात Templates पेन में Windows Application को क्लिक करें।
- Name टेक्स्टबॉक्स में Exercise टाइप करें तथा OK को क्लिक करें। उसके बाद एक नया विण्डोज फॉर्मस प्रोजेक्ट खुलेगा।
- फॉर्म पर टूलबॉक्स से Picture Box कंट्रोल को दो बार क्लिक कर जोड़ें। तथा इसके प्रॉपर्टी को डिफॉल्ट रहने दें।
- फॉर्म को दो बार क्लिक करें। तथा Form1_Load इवेण्ट हैण्डलर में इस एक लाइन के कोड को जोड़ें- LoadNew Pict()
- उसके बाद Form1_Load इवेण्ट हैण्डलर के बाहर इस सबरूटीन को टाइप करें-
Private Sub LoadNewPict()
Picture Box1.Image = Image. FromFile(“C:\image1.jpg”
End Sub F5 दबाएँ। आप परिणाम को देखेंगे।
7. रन समय में ग्राफिक को हटाना (Removing a Graphic At Run Time)
जब चाहें आप आपके द्वारा जोड़े गए ग्राफिक/चित्र को हटा सकते हैं। ग्राफिक को हटाने के लिए यह प्रारूप है-
Name OfPicture Box.Image = Nothing
उदाहरण के लिए –
PictureBox1.Image = Nothing
यदि आप पिक्चरबॉक्स में जोड़े गये इमेज के द्वारा उपयोग किए गए संसाधनों (यथा मेमोरी में स्थान) को भी रिलीज करना चाहते हैं तो यह लिखें- Picture Box1.Image.Dispose ()
उपरोक्त कोड इमेज द्वारा लिए जा रहे मेमोरी को रिक्त कर देगा।
आओ अभ्यास करें –
डिस्प्ले हो तथा जब यूजर Clear The Image बटन को क्लिक करें तो वह इमेज वहाँ से हट जाय। इस ऑब्जेक्ट के के नाम Load An Image तथा Clear The Image करें। जब यूजर Load An Image को क्लिक करे तो फॉर्म पर इमेज एक विण्डोज प्रोग्राम बनाएँ। तथा अपने फॉर्म पर एक पिक्चरबॉक्स कंट्रोल को जोड़ें। दो बटन को फॉर्म पर जोड़ें। बटनों प्रॉपर्टी तथा मान इस प्रकार होंगे। इसका इंटरफेस होना चाहिए।
ऑब्जेक्ट | प्रॉपर्टी | मान |
फॉर्म | Name | Form1 |
Text | Exercise | |
पिक्चरबॉक्स | Name | Picture Box1 |
बटन | Name | btnLoad |
Text | Load An Image | |
बटन | Name | btnClear |
Text | Clear The Image |
समाधान :
- File मेन्यू को क्लिक करें तथा New Project का चयन करें ।
- New Project डायलॉग बॉक्स खुलने के पश्चात Templates पेन में Windows Application को क्लिक करें।
- Name टेक्स्टबॉक्स में Lab Exercise 7.7 टाइप करें तथा OK को क्लिक करें । उसके बाद एक नया विण्डोज फॉर्मस प्रोजेक्ट खुलेगा।
- Load an Image बटन को दो बार क्लिक करें तथा btnLoad_Click हैण्डलर में इस कोड को जोड़ें-
PictureBox1.Image = Image.FromFile(“C:\image1.jpg”)
PictureBox1.SizeMode = PictureBoxSizeMode.Auto Size - फिर Clear the Image को दो बार क्लिक करें और btn Clear_Click इवेण्ट हैण्डलर के लिए इस कोड को जोड़ें-
PICTUREBOX1.IMAGE.DISPOSEO
PICTUREBOX1.IMAGE = NOTHING - F5 दबाएँ तथा परिणाम को देखें।