इस खिड़की में चौकोर कोने क्यों हैं?


24

एयरो थीम के साथ विंडोज 7 पर, नोटपैड ++ की प्राथमिकताएं विंडो में वर्गाकार कोने, कोई सिस्टम मेनू आइकन, कोई नजदीकी बटन और कोई गहरा 1pxबॉर्डर नहीं है। इस विंडो में एक AlwaysOnTopविशेषता भी है ।

नोटपैड ++
(मैंने विंडो को आकार बदलने के लिए आकार बदल दिया 640px।)

दिलचस्प रूप से पर्याप्त है, आप इस शैली को AutoHotkey का उपयोग करके अन्य विंडो में कॉपी कर सकते हैं । तो, ऐसा लगता है कि इसमें कोई गंदी चाल शामिल नहीं है। हालाँकि, मुझे नहीं लगता कि मैंने इस विंडो शैली को कहीं और देखा है।

क्या Microsoft द्वारा इस शैली की निंदा की जा रही है? क्या इस प्रकार की विंडो का कोई नाम है?


जिज्ञासु के लिए: सामान्य बनाम "स्क्वायर"

साधारण   कैलकुलेटर


मुझे लगता है (लेकिन मुझे यकीन नहीं है) कि .NET फ्रेमवर्क डिफ़ॉल्ट रूप से गोल कोनों के साथ एक फ्रेम देगा, और कोई भी वास्तव में इसे बदलने की तरह महसूस नहीं करता है।
soandos

क्योंकि Apple के पास गोल कोनों पर पेटेंट है।
क्लो

जवाबों:


37

इसे टूल (बार) विंडो कहा जाता है । WS_EX_TOOLWINDOWविस्तारित विंडो वाले किसी भी विंडो को एक सिस्टम मेनू के बिना प्रदान किया जाएगा या बक्से को छोटा / अधिकतम किया जाएगा, और एक छोटा टाइटलबार। विंडोज एक्सपी और ऊपर (जो थीम का समर्थन करते हैं) में, टूल विंडो आमतौर पर गोल कोनों के बिना (कम से कम डिफ़ॉल्ट थीम के साथ) प्रदान की जाती हैं।

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

स्पष्ट रूप से कुछ कार्यक्रम अन्य उद्देश्यों के लिए शैली का उपयोग करते हैं, अक्सर एक प्रकार का मोडल, अस्थायी संवाद बनाने का एक तरीका है जो मुख्य कार्यक्रम के लिए एक बच्चा है।

नोट: इस प्रभाव की एक जोड़ी (जिनमें से पहले दो कर रहे हैं आमतौर पर है कारणों अपने गैर मानक के उपयोग के लिए):

  • इस शैली के साथ एक विंडो / डायलॉग को टास्कबार पर एक बटन नहीं मिलता है
  • यह डायलॉग Alt+ Tabको रोकता है
  • यह केवल संवाद को कैप्चर करने से Alt+ रोकता है PrtScr; संपूर्ण पैरेंट प्रोग्राम विंडो कैप्चर की जाती है।

चित्र 1: MSPaint टूलबार विंडो

यहाँ छवि विवरण दर्ज करें

चित्र 2: विंडोज एक्सप्लोरर डेस्कबैंड

यहाँ छवि विवरण दर्ज करें


अहा! यह समझ आता है। :)
iglvzx

Alt+ PrintScreenनोटपैड ++ प्राथमिकताएं संवाद के साथ विंडोज 7 में सिर्फ संवाद कैप्चर करता है।
बॉब

17

यह इस विंडो शैली का नाम और .NET में उपलब्ध विकल्पों का विवरण देता है; इस विंडो शैली के मूल उद्देश्य के लिए @ Synetech का उत्कृष्ट उत्तर देखें, इस तरह के एक संवाद बॉक्स और नोटपैड ++ जैसे अप्रबंधित विंडोज कार्यक्रमों में कार्यान्वयन के लिए इसका उपयोग किया जा सकता है।


खिड़की के चौकोर कोने हैं और ऐसा दिखता है क्योंकि नोटपैड ++ के डिजाइनरों / प्रोग्रामरों में से एक ने एक विशिष्ट विंडो शैली का उपयोग करने का फैसला किया है। Synetech उस विंडो शैली के लाभों का विवरण देता है।

.NET / Visual Studio में, यह वर्ग की FormBorderStyleसंपत्ति में सेट किया गया है System.Windows.Forms.Form। विशेष रूप से, यह है FixedToolWindow। संभव मान System.Windows.Forms.FormBorderStyleगणना में हैं।

ToolWindowएक सादे से सभी मूल्यों डिफ़ॉल्ट रूप से काम थोड़ा अलग तरह से साथ .NET में रों WS_EX_TOOLWINDOWWindows API में, हालांकि वे एक ही लग रही है। परीक्षण के साथ, मैं निर्धारित किया है कि वे करते टास्कबार पर दिखाई देते हैं और वे करते हैं पर प्रकट Alt+ Tabजब तक प्रपत्र संपत्ति कार्य स्विचर ShowInTaskbarके लिए निर्धारित है falseShowInTaskbarदोनों टास्कबार और में दृश्यता को प्रभावित करता है Alt+ Tabके लिए ToolWindowहै, लेकिन केवल दूसरों के लिए कार्य पट्टी।

इस बीच, अधिक सामान्य विंडो शैलियों से आइकन को कम करना / कम करना / पुनर्स्थापित / अधिकतम करना संभव है, हालांकि उन्हें ToolWindowएस में जोड़ना संभव नहीं लगता है । टास्कबार से सामान्य खिड़कियों को छिपाना भी संभव है।

केवल कार्यात्मक लाभ WS_EX_TOOLWINDOWप्रदान करता है, जहां तक ​​मैं बता सकता हूं, यह है कि विंडो Alt+ में नहीं दिखाई देती है Tab


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

के संभावित मान FormBorderStyle:

पहली छवि एरो सक्षम के साथ चल रहे कार्यक्रम का एक स्क्रीनशॉट है, दूसरा विज़ुअल स्टूडियो डिज़ाइनर व्यू (नो एयरो) से है।
पूर्ण आकार के संस्करणों के लिए छवियों पर क्लिक करें
विवरण एन्यूमेंटेशन पर MSDN लेख से लिया गया है FormBorderStyle

  • None

    कोई सीमा नहीं।

Screenshot_Aero Screenshot_NonAero

  • FixedSingle

    एक निश्चित, सिंगल-लाइन बॉर्डर।

Screenshot_Aero Screenshot_NonAero

  • Fixed3D

    एक निश्चित, तीन आयामी सीमा।

Screenshot_Aero Screenshot_NonAero

  • FixedDialog

    एक मोटी, निश्चित संवाद-शैली की सीमा।

Screenshot_Aero Screenshot_NonAero

  • Sizable (चूक)

    एक resizable सीमा।

Screenshot_Aero Screenshot_NonAero

  • FixedToolWindow

    एक टूल विंडो बॉर्डर जो कि रेज़िस्टेबल नहीं है। एक उपकरण विंडो टास्कबार में या उस विंडो में नहीं दिखाई देती है जो उपयोगकर्ता के ALT+ दबाने पर दिखाई देती है TAB। हालाँकि जो रूप निर्दिष्ट FixedToolWindowकरते हैं, वे आमतौर पर टास्कबार में नहीं दिखाए जाते हैं, आपको यह भी सुनिश्चित करना होगा कि ShowInTaskbarसंपत्ति निर्धारित की गई है false, क्योंकि इसका डिफ़ॉल्ट मूल्य है true

Screenshot_Aero Screenshot_NonAero

  • SizableToolWindow

    एक resizable टूल विंडो बॉर्डर। एक उपकरण विंडो टास्कबार में या उस विंडो में नहीं दिखाई देती है जो उपयोगकर्ता के ALT+ दबाने पर दिखाई देती है TAB

Screenshot_Aero Screenshot_NonAero


हाँ! कि हम किस बारे में बात कर रहे थे।
avirk

इसका प्रबंधित / अप्रबंधित या मूल / .NET कोड से कोई लेना-देना नहीं है। यह बस एक बात है कि विंडोज स्टाइल के साथ विंडोज कैसे WS_EX_TOOLWINDOWशैली करता है। .NET केवल और इसके लिए उपनाम FixedToolWindowदेता है । कोई अपराध नहीं है, लेकिन यह उत्तर वास्तव में प्रश्न का उत्तर नहीं देता है या पूछे गए व्यवहार की व्याख्या करता है, यह बस .NET में उपयोग की जाने वाली विभिन्न विंडो शैलियों की एक सूची / संसाधन है । WS_EX_TOOLWINDOWSizableToolWindowWS_EX_TOOLWINDOW|WS_THICKFRAME
सिंटेक

@Synetech मुझे पता है कि कोड का प्रबंधन किया गया है या नहीं, इससे मेरा कोई लेना-देना नहीं है, मैंने सोचा था कि मैं .NET के उपयोग और अन्य विकल्पों को उपलब्ध नाम दे दूंगा, मतभेदों के स्क्रीनशॉट के साथ। Does this type of window have a name?यह कम से कम एक .NET प्रोग्रामर के नजरिए से इसका जवाब देता है। और स्पष्टीकरण? क्योंकि प्रोग्रामर को ऐसा लगा। आपने संभवतः वांछित प्रभाव सूचीबद्ध किए हैं। यह इसके बारे में। चाहे वह एमएस द्वारा अनुशंसित या निंदित हो, मुझे कोई पता नहीं है। व्यक्तिगत रूप से, मुझे लगता है कि आपने इसे समझाने के लिए एक सराहनीय काम किया है।
बॉब

यही संपादन के लिए हैं।
Synetech

वह @Synetech क्या है?
बॉब
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.