Saturday, January 1, 2022

WinForm FontDialog and ColorDialog in Hindi

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

इस पोस्ट में हम विंडोज एप्लिकेशन में प्रयोग किए जाने वाले अलग-अलग तरह के डायलॉग बॉक्स का अध्ययन करेंगे जैसे कलर डायलॉग बॉक्स, फोंट डायलॉग बॉक्स, ओपन डायलॉग बॉक्स, सेव डायलॉग बॉक्स इत्यादि।

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

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

जब यूजर द्वारा कलर डायलॉग से संबंधित बटन को क्लिक किया जाता है तो कलर डायलॉग बॉक्स उपस्थित होता है। जब कलर डायलॉग बॉक्स उपस्थित होता है तो उसमें पूर्व नियत कलर अपने आप चयनित होता है लेकिन यूजर किसी अन्य कलर का भी चयन कर सकता है। यूजर कलर का चयन करता है। चयन के बाद वह कलर डायलॉग बॉक्स के ओके बटन को क्लिक करता है। ऐसा करने पर लेवल में लिखे गए टेक्स्ट का कलर फॉन्ट डायलॉग में चयनित कलर के अनुरूप हो जाता है।

इसी प्रकार, जब फोंट डायलॉग से संबंधित बटन को क्लिक किया जाता है तो फोंट डायलॉग बॉक्स उपस्थित होता है। यूजर अपने मनमर्जी के अनुसार फोंट स्टाइल, फोंट की साइज इत्यादि का चयन करता है और जब वह फोंट डायलॉग बॉक्स का ओके बटन क्लिक करता है तब वह फोंट लेवल कंट्रोल के फोंट को परिवर्तित कर देता है।

ध्यातव्य है कि डॉट नेट फ्रेमवर्क के अंतर्गत Color और Font ये दोनों System.Drawing नेमस्पेस के अंदर दो अलग-अलग क्लासेज है जिनका उपयोग कर प्रोग्राम में किसी ऑब्जेक्ट के कलर और फोंट को परिवर्तित किया जा सकता है। ऐसा करने के लिए हमें फोंट क्लास का ऑब्जेक्ट बनाकर उसकी प्रॉपर्टीज सेट करनी होती है। इसी तरह, कलर क्लास का ऑब्जेक्ट बनाकर उसकी प्रॉपर्टीज को सेट करना होता है। इस तरह, जब फोंट और कलर ऑब्जेक्ट बन जाते हैं तो हम इनका उपयोग कोड में अन्यत्र किसी दूसरे जगह यूज कर सकते हैं।

ऊपर के चित्र से स्पष्ट है कि जब यूजर कलर डायलॉग बॉक्स से अपने मन मुताबिक कलर के चयन के बाद ओके बटन क्लिक करता है तब पर फॉर्म के लेबल का कलर भी परिवर्तित हो जाता है।

ऊपर के चित्र से स्पष्ट है कि जब यूजर फॉन्ट डायलॉग बॉक्स से अपने मन मुताबिक फोंट के स्टाइल, फॉन्ट के आकार वगैरह चयन कर ओके बटन क्लिक करता है तब पर फॉर्म के लेबल का फॉन्ट भी परिवर्तित हो जाता है जो निम्न चित्र में दिखाया गया है:-

C# Code:


using System;
using System.Drawing;
using System.Windows.Forms;

namespace DialogsWF
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            Label1.Text = "Hello World";
            Label1.TextAlign = ContentAlignment.MiddleCenter;
        }

        private void ColorDlgButton_Click(object sender, EventArgs e)
        {
            colorDialog1.AllowFullOpen = false; //Define Custom Color is disabled
            colorDialog1.SolidColorOnly = false;
            colorDialog1.Color = Color.Red; //default color
            if (colorDialog1.ShowDialog() == DialogResult.OK)
            {
                Label1.Text = "Hello World";
                Label1.ForeColor = colorDialog1.Color;
            }
        }

        private void FontDialogButton_Click(object sender, EventArgs e)
        {
            Font font = new Font("Arial", 14);
            fontDialog1.Font = font; //default font
            if (fontDialog1.ShowDialog() == DialogResult.OK)
            {
                Label1.Font = fontDialog1.Font;
            }
        }
    }
}

© अजीत कुमार, सर्वाधिकार सुरक्षित।

इस आलेख को उद्धृत करते हुए इस लेख के लिंक का भी विवरण दें। इस आलेख को कॉपीराइट सूचना के साथ यथावत साझा करने की अनुमति है। कृपया इसे ऐसे स्थान पर साझा न करें जहाँ इसे देखने के लिए शुल्क देना पडे।

No comments:

Post a Comment

Hot Topics