2010-08-24 18 views
5

मैं एक अजीब समस्या यह है कि मैं कैसे हल करने के लिए बाहर काम करने की जरूरत है के बीच बदलते आकार,नेट नियंत्रण कंप्यूटर

मैं अपने लैपटॉप पर काम करने के लिए एक परियोजना पर काम सप्ताह के अंतिम दो बिताया है, लेकिन जब मैं काम पीसी में से एक पर प्रोग्राम खोलने की बहुत नियंत्रण गलत आकार और गोद आदि अधिक कर रहे हैं,

मशीनों के बीच मतभेद यह है:

लैपटॉप:

विंडोज 7 प्रो; प्रदर्शन - 1920 * 1040; विज़ुअल स्टूडियो 2008; .NET Framework 3.5

कार्य डेस्कटॉप:

Windows XP समर्थक; डिस्प्ले: 1024 * 768; विजुअल स्टूडियो 2008; .नेट फ्रेमवर्क 3.5;

समस्या को बेहतर तरीके से लिखने के लिए, मेरे पास एक पैनल है जिसे मैंने 300px चौड़ा होने के लिए सेट किया है, जिसमें एरियल और आकार 8 फ़ॉन्ट का उपयोग करके दिन के साथ एक लेबल और एमएम-डीडी-वाईय प्रारूप में दिन होता है।

लैपटॉप पर यह सब ठीक से फिट बैठता है लेकिन डेस्कटॉप पर पैनल छोटा लगता है और लेबल केवल आधा टेक्स्ट प्रदर्शित करता है।

कई समस्याओं में से एक है यही कारण है, दूसरे के साथ रंग system.control (althoug मैं समझ है कि बनाम XP समस्या एक Win7 होने के लिए)

क्या मैं करने के लिए क्या कर सकते हैं प्रणालियों के बीच एक पूरी तरह से अलग रंग हो रहा है है इसे ठीक करो? क्या यह एक विंडोज़ संस्करण समस्या है? (मेरे पास अपने लैपटॉप पर एक वीएमवेयर मशीन पर एक्सपी है इसलिए मैं उसमें कोड और डिज़ाइन कर सकता था)

क्या यह एक प्रदर्शन समस्या है? - यह मेरे लिए एक बड़ी समस्या है क्योंकि मेरे पास केवल 1 लैपटॉप है और मुझे लगता है कि इस समस्या से मुझे यूनी के लिए हालिया असाइनमेंट पर नुकसान हो सकता है (मैंने लैपटॉप पर कोड किया और आज तक डेस्कटॉप पर कभी नहीं खोला - इसलिए इसका कोई विचार नहीं था यह समस्या)

संपादित करें: मुझे अपनी विशेष समस्या के लिए एक प्रकार का समाधान मिला है, मैंने पाया कि मेरा लैपटॉप दृष्टिहीन लोगों के लिए डीपीआई सेटिंग्स पर 125% पर काम कर रहा था (कोई विचार नहीं ..) तो मैंने इसे रीसेट कर दिया है वापस 100% या 96 डीपीआई जिसने मेरी समस्याओं को ठीक किया है, और मुझे पता है कि कुछ अन्य डेवलपर्स से बात करने के बाद, वे कहते हैं कि वे 96 डीपीआई के लिए डिज़ाइन करते हैं जबकि पाठ के चारों ओर एक छोटी सी जगह खाली होती है। लेकिन फिर वे क्यूटी फ्रेमवर्क का उपयोग कर सी #+ में सी # अधिक और मुख्य रूप से कोड का उपयोग नहीं करते हैं।

+2

WinForms के साथ यह एक आम समस्या है और प्रत्येक डिस्प्ले के डीपीआई से संबंधित है। यदि आप "Winforms DPI" के लिए Google हैं, तो आपको इस पर बहुत सारी हिट मिल जाएगी। –

उत्तर

11

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

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

2

सुनिश्चित करें कि आप विजुअल स्टूडियो में अपने पैनल का आकार बदल सकते हैं जिसमें सभी नियंत्रणों को पुनर्स्थापित और सही ढंग से आकार दिया जा रहा है। आप इसे प्राप्त करने के लिए एंकर का उपयोग कर सकते हैं, या शायद आपको नियमित Panel के बजाय TableLayoutPanel नियंत्रण का उपयोग करना चाहिए।

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