2012-05-31 14 views
8

मैं कुछ तत्वों को छुपाकर उपयोगकर्ता को 'स्वच्छ और सरल' इंटरफ़ेस देने का प्रयास करता हूं। केवल एक छोटा तीर इंगित करता है कि वह मुख्य मेनू बार के कुछ हिस्से का विस्तार कर सकता है। जब सब बंद कर दिया है यह इस तरह दिखता है:पीसी के बीच नियंत्रण की स्केलिंग क्यों भिन्न होती है?

enter image description here

जब आप सभी के लिए खुला यह इस तरह दिखता है:

enter image description here

प्रत्येक तीर एक SpeedButton thats है एक पैनल की बाईं ओर बैठता है । बटन पर क्लिक करके चौड़ाई को स्पीडबटन (बंद) की चौड़ाई और डिज़ाइन समय (पैनल) की चौड़ाई के बीच टॉगल किया जाता है। डिजाइनटाइम पर पैनल की चौड़ाई स्थिर के रूप में संग्रहीत की जाती है। प्रक्रिया show_hide_controls इस संभालता है:

procedure TCompose_Main.show_hide_controls (key: string; Button: TSpeedButton; Panel: TPanel; width: Int32); 
begin 
    if GPA.iKey [key] = 1 
     then Panel.Width := width   // show panel, set panel to design width 
     else Panel.Width := Button.Width; // hide panel, set with to button width 
    Button.Glyph.Assign (nil); 
    Images_Left_Right.GetBitmap (GPA.iKey [key], Button.Glyph); 
end; // show_hide_controls // 

यह दिनचर्या इस प्रकार कहा जाता है:

show_hide_controls ('Show Play Controls', // index to panel to show/hide 
        Enlarge_Play,   // Speedbutton requesting the enlargement/hide 
        Panel_Play,   // Panel to show/hide 
        cPlayWidth);   // Width of panel when shown 

अब कई उपयोगकर्ताओं की रिपोर्ट है कि पैनल का हिस्सा छिपा हुआ है, जैसे:

enter image description here

ऐसा लगता है कि ऑपरेटिंग सिस्टम (विंडोज 7) स्केलिंग के साथ कुछ चालें बजाता है। मैं इस त्रुटि को डुप्लिकेट करने में सक्षम नहीं हूं। क्या कोई समझता है कि यहाँ क्या हो रहा है? और क्या स्वतंत्र तरीके से सेटिंग्स में इसके खिलाफ प्रोग्राम करने का एक साफ तरीका है?

अपडेट करें क्योंकि जीडीएफ ने अपने जवाब में सही तरीके से बताया है कि इसे फ़ॉन्ट्स (नियंत्रण कक्ष> प्रदर्शन) के स्केलिंग के साथ करना है। यह मेरी मशीन पर कुछ हद तक अजीब व्यवहार करता है। 125% तक इसे बदलने के दौरान इसे 150% तक बदलना एक मामूली प्रभाव पड़ता है, इसका एक बड़ा प्रभाव पड़ता है। जैसा कि आपने अनुमान लगाया होगा मैंने पहले परीक्षण किया था, न कि दूसरे स्केलिंग। केवल जब उपयोगकर्ता ने 125% से 100% तक स्केलिंग की सूचना दी तो मैं अपनी मशीन पर अपनी त्रुटि दोहरा सकता था।

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

इसे कैसे संभालें? मुझे नहीं पता, मैं प्रयोग शुरू कर दूंगा और अगर आपको कुछ मिल जाए तो आपको बताएगा। आपकी मदद के लिए आप सभी को

धन्यवाद!

+0

आईआर वास्तव में लगता है कि फ़ॉन्ट आकार मुख्य कारक है, क्योंकि जिन नियंत्रणों में उनके साथ जुड़े पाठ नहीं हैं (बाईं ओर छवि बटन, उदाहरण के लिए) प्रभावित नहीं होते हैं। मैं सुझाव दूंगा कि आप पैनलों की "एंकर" संपत्ति का उपयोग अपने सापेक्ष स्थान को बाईं ओर रखने के लिए करें, ताकि आप कम से कम दृश्य प्रभाव को कम कर सकें। – jfoliveira

+0

@ जेफरसन - मैंने विभिन्न फ़ॉन्ट आकारों के साथ प्रयास किया और समस्या को डुप्लिकेट नहीं कर सका। पीले त्रिकोण में कोई पाठ नहीं है लेकिन गायब हो जाता है। – Arnold

+0

+1 और स्टार, यह समस्या हमारे डेल्फी विकास में व्यापक रूप से फैली हुई है और इसे किसी भी व्यक्ति के लिए जाना जाना चाहिए जो डेल्फी में वास्तव में संगत जीयूआई बनाना चाहता है। –

उत्तर

10

यदि आपकी समस्या मुझे विश्वास है, तो आपने अभी जवाब दिया है। कुछ फोंट स्केलिंग के साथ विंडोज 7 नाटकों। जब आप किसी पीसी पर Win7 इंस्टॉल करते हैं तो यह आपके मॉनिटर के आकार की जांच करता है और आपके मॉनिटर आकार के आधार पर "डिफ़ॉल्ट" स्केल सेटिंग को 100% या 125% बनाता है। समस्या यह है कि साथ ही यह कंप्यूटर पर फ़ॉन्ट फ़ाइलों को स्थापित करता है। यह कुछ फोंट के लिए अलग-अलग "डिफ़ॉल्ट" के लिए एक अलग फ़ॉन्ट फ़ाइल का उपयोग करता है।

मेरा अनुमान है कि आपका ऐप एमएस सैन्स सेरिफ़ का उपयोग कर रहा है ... यह उन फोंटों में से एक है जो विभिन्न फ़ॉन्ट फ़ाइल इंस्टॉल करता है, जिस पर Win7 (डिफ़ॉल्ट) के रूप में उपयोग कर रहा है।

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

नीचे दिए गए लिंक आप कैसे मूल http://www.rlvision.com/misc/windows_7_font_bug.asp

वापस करने के लिए उपयोग में-फ़ॉन्ट फ़ाइल को बदलने के लिए हालांकि पता चलता है, मैं इस फ़ॉन्ट के बंद हो जाते हैं और के रूप में काम करने के लिए लेआउट तत्वों को अपडेट करने का प्रयास होगा Win7 के साथ ही पिछले OSes

यह है कि मैं क्या लगता है कि आप जानकारी की सीमित मात्रा में आप द्वारा प्रदान की गई साथ काम कर रहे है पर वांछित ...

अद्यतन जब से तुम मुझे याद दिलाया जब y कहां 125% वी 150% के बीच अलग दिखने का उल्लेख किया। मैं बस यह सुनिश्चित करना चाहता था कि आप जानते थे कि दो अलग-अलग एमएस सैन्स सेरिफ फाइलें विभिन्न पैमाने पर बेहतर दिखती हैं। फ़ॉन्ट फ़ाइलों में से एक 100% और 150% पर शानदार दिखता है लेकिन 125% पर भयानक लगता है। अन्य फ़ॉन्ट फ़ाइल 125% पर शानदार लगती है, लेकिन 100 और 150% पर भयानक लगती है।

मैं काफी याद नहीं है जो फ़ॉन्ट फ़ाइल जो है, लेकिन मैं जानता हूँ कि 2 दोषियों 1) SSERIFF.FON 2) SSERIFE.FON

+0

धन्यवाद। मैं कोशिश करूँगा और आप पर वापस आऊंगा। – Arnold

+0

जीडीएफ: क्या डिफ़ॉल्ट फ़ॉन्ट का उपयोग किया जाना चाहिए? –

+1

@WarrenP: ताहोमा, वेरदाना, सेगो यूआई, जो कुछ भी, कोई भी सही प्रकार वेक्टर फ़ॉन्ट (जो "चरणों" के बिना स्केल कर सकता है)। इससे भी बेहतर: हमेशा ओएस डिफ़ॉल्ट फ़ॉन्ट का उपयोग करें (जो एमएस सैन्स सेरिफ़ नहीं रहा है ... ओह, मुझे याद नहीं है, विन 3.1?) –

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