डेल्फी (2010 में इस मामले में, लेकिन यह अन्य संस्करणों के लिए ऐसा कर सकता है) में एक विरासत TImageList युक्त एक फॉर्म खोलते समय, आईडीई अनिवार्य रूप से (मुझे कोई कविता नहीं मिल सकती है या इसके लिए लय) छवि डेटा फिर से विरासत में जोड़ता है। यह तब निष्पादन योग्य के आकार को बढ़ाता है। किसी को भी पता है क्यों, और मैं इसे कैसे रोक सकता हूं? मैं दोहराना, छवि बदल गया है।डेल्फी आईडीई विरासत में डीएफएम फाइलों में इमेजलिस्ट बदल रहा है
उत्तर
मेरी सिफारिश: .dfm फ़ाइलों में छवियों को कभी भी न रखें। हमेशा उन्हें संसाधन फ़ाइलों में डाल दें और अपने ऐप पर नियंत्रण प्राप्त करें।
यह टीआईमेजलिस्ट के साथ एक ज्ञात मुद्दा है, और कचरा डेटा को फिर से हटाने के अलावा आप इसके बारे में इतना कुछ नहीं कर सकते हैं। (BeyondCompare यहां बहुत उपयोगी हो सकता है, खासकर स्रोत नियंत्रण के संयोजन के साथ।) If you want to see it fixed, please vote for the QC report on it.
यह समस्या का "समाधान" नहीं है, लेकिन क्या हो रहा है इसके बारे में अधिक स्पष्टीकरण। किसी दिए गए छवि सूची के लिए छवि डेटा डेटा के बाइनरी ब्लॉब के रूप में संग्रहीत किया जाता है। डेटा का यह ब्लॉब comctl32.dll से अंतर्निहित IMAGELIST कार्यान्वयन से प्राप्त किया जाता है।
संभवतः क्या हो रहा है कि किसी कारण से comctl32.dll में विंडोज़ कार्यान्वयन नीचे "पूर्वजों" उदाहरण और "वंश" उदाहरण के बीच छवि डेटा को अलग-अलग स्ट्रीम कर रहा है। विंडोज़ के लिए, इन दो उदाहरणों के बीच कोई संबंध नहीं है।
फॉर्म-विरासत कार्य करने का तरीका यह है कि यह निर्धारित करने के लिए स्ट्रीमिंग करते समय "वंशज" और "पूर्वज" के बीच संपत्ति-दर-संपत्ति तुलना करता है, यह निर्धारित करने के लिए कि किसी दिए गए संपत्ति को फ़ॉर्म में लिखा जाना चाहिए या नहीं। चूंकि छवि डेटा गुओ का एक अपारदर्शी ब्लॉब है, हम जो भी कर सकते हैं वह पूर्व-पूर्व में TImageList उदाहरण लिखता है और वंश पर TImageList उदाहरण क्या लिखता है, इसके बीच एक बाइट-बाय-बाइट तुलना है। यदि केवल एक बाइट अलग था, तो स्ट्रीमिंग सिस्टम के पास अनुमान है कि कुछ बदले में अनुमानित उदाहरण से डेटा लिखने के अलावा कोई विकल्प नहीं है। उदाहरण के लिए (और मुझे वास्तव में विवरण नहीं पता है क्योंकि यह अपारदर्शी है), यदि गुओ के ब्लॉब में टाइमस्टैम्प होता है, तो यह कल्पना की जा सकती है कि प्रत्येक बार जब यह लिखा जाता है तो डेटा अलग होगा।
मैं जो करता हूं वह इमेजलिस्ट को डेटा मॉड्यूल पर रखता है और फिर इसे फॉर्म में उपयोग करता है। फॉर्म डिजाइनर छवि सूची
मेरी अधिकांश परियोजनाओं में, मेरे पास एक या अधिक संसाधन डेटामैड्यूल हैं जिनमें इन प्रकार की छवि सूचियां हैं। –
- 1. डेल्फी डीएफएम फाइलों में अजीब [संख्या] एस - मूल और आवश्यकता?
- 2. डेल्फी 200 में डीएफएम में डबलबफर्ड संपत्ति को जोड़ा जा रहा है डेल्फी 2007
- 3. डेल्फी डीएफएम नहीं मिला
- 4. क्या डेल्फी कभी-कभी टेक्स्ट फॉर्म फाइलों (डीएफएम) को बाइनरी प्रारूप में वापस लाता है?
- 5. डेल्फी आईडीई
- 6. डेल्फी आईडीई
- 7. डेल्फी आईडीई
- 8. डेल्फी आईडीई - 'सीपीयू' विंडो
- 9. इंटेलिजे 10 आईडीई में मौजूदा फाइलों को कैसे आयात करें?
- 10. मैकवीम में नेता बदल रहा है?
- 11. सी में कामकाजी निर्देशिका बदल रहा है?
- 12. डेल्फी - स्पष्टीकरण Width और ExplicitHeight क्यों डीएफएफ फाइलों में दिख रहा है और यह क्या है?
- 13. डेल्फी आईडीई क्या विकसित किया गया है?
- 14. जब मैं डेल्फी एक्सई आईडीई
- 15. डीएफएम फ़ाइलों में हमेशा पिक्सेलपियरइंच = 9 6 को कैसे बनाए रखें, भले ही विंडोज मध्यम फ़ॉन्ट आकार (125%)
- 16. मैं अपने डीएफएम अकेले छोड़ने के लिए डेल्फी कैसे प्राप्त करूं?
- 17. पीडीएफ अनुलग्नक अनुपयोगी डीएटी फाइलों में बदल रहे हैं
- 18. डेल्फी - बाहरी अपवाद C0000008 जब आवेदन आईडीई
- 19. वीबी 6 आईडीई मेरे गणित नामों के मामले को बदल रहा है
- 20. डेल्फी आईडीई संदेश भेजने से रोकें
- 21. डेल्फी आईडीई परियोजना "स्वच्छ" कमांड - यह क्या करता है?
- 22. ग्रहण आईडीई धीमा क्यों हो रहा है?
- 23. जीवाश्म: एक कमांड में लापता फाइलों को हटा रहा है?
- 24. लोड हो रहा है * .so फाइलों में फाइलें
- 25. विजुअल स्टूडियो में व्हाइटस्पेस सूचक का रंग बदल रहा है?
- 26. जावास्क्रिप्ट में पुष्टि() के डिफ़ॉल्ट शीर्षक को बदल रहा है?
- 27. Preg_replace, पैटर्न के हिस्से को केवल() में बदल रहा है?
- 28. Django: व्यवस्थापक: व्यवस्थापक में क्षेत्र के विजेट बदल रहा है
- 29. log4net में प्रोग्राम स्तर पर लॉग स्तर बदल रहा है?
- 30. array_walk फ़ंक्शन में सरणी कुंजियां बदल रहा है?
मैं जो करता हूं वह डेटा मॉड्यूल पर छवि सूची डालता है और इसे आपके रूपों में क्लॉज का उपयोग करता है। डिजाइनर इसे – Jamie
@Jamie देखने में सक्षम होना चाहिए: इसे एक उत्तर दें! –
@jeroen Pluimers - जोड़ा गया – Jamie