MFC (Microsoft Foundation Classes) তে CStatic, CButton, এবং অন্যান্য কন্ট্রোলগুলি কাস্টমাইজ করা সহজ, যা অ্যাপ্লিকেশনকে আরও ইউজার-বান্ধব এবং পেশাদারী দেখতে সাহায্য করে। আপনি মেনু, টুলবার, স্ট্যাটাস বার এবং কন্ট্রোলগুলির স্টাইল, আউটপুট এবং আচরণ কাস্টমাইজ করতে পারেন। নিচে কিছু জনপ্রিয় কন্ট্রোল যেমন CStatic, CButton, এবং অন্যান্য কাস্টমাইজ করার পদ্ধতি আলোচনা করা হলো।
CStatic কন্ট্রোল কাস্টমাইজ করা
CStatic হল এমন একটি কন্ট্রোল যা সাধারণত পাঠ্য, চিত্র বা যেকোনো ধরনের স্ট্যাটিক ইনফরমেশন প্রদর্শন করার জন্য ব্যবহৃত হয়। এটি সাধারণত পরিবর্তনযোগ্য নয়, অর্থাৎ ব্যবহারকারী এর ভ্যালু পরিবর্তন করতে পারে না। তবে, এর স্টাইল এবং বৈশিষ্ট্য কাস্টমাইজ করা যায়।
Code Example: CStatic কন্ট্রোল কাস্টমাইজ করা
void CMyDialog::OnInitDialog()
{
CDialogEx::OnInitDialog();
// CStatic কন্ট্রোলের স্টাইল কাস্টমাইজ করা
CStatic* pStatic = (CStatic*)GetDlgItem(IDC_MY_STATIC);
pStatic->SetWindowText(_T("Hello, MFC!")); // টেক্সট সেট করা
pStatic->ModifyStyle(SS_SIMPLE, SS_CENTER); // টেক্সটকে সেন্টারালাইজ করা
}
এখানে, IDC_MY_STATIC আইডি দিয়ে CStatic কন্ট্রোলকে চিহ্নিত করা হচ্ছে, তারপর SetWindowText() ফাংশন দিয়ে টেক্সট সেট করা হচ্ছে এবং ModifyStyle() ব্যবহার করে কন্ট্রোলের স্টাইল পরিবর্তন করা হচ্ছে।
- বিভিন্ন স্টাইল কাস্টমাইজ করা:
SS_CENTER: টেক্সট সেন্টার করাSS_RIGHT: টেক্সট ডানদিকে সরানোSS_LEFT: টেক্সট বাম দিকে রাখতেSS_BITMAP: ইমেজ (বিটম্যাপ) প্রদর্শন
CButton কন্ট্রোল কাস্টমাইজ করা
CButton হল একটি সাধারণ কন্ট্রোল যা সাধারণত ক্লিকযোগ্য বোতাম তৈরি করার জন্য ব্যবহৃত হয়। MFC তে CButton কন্ট্রোলকে কাস্টমাইজ করা যায়, যেমন এর রং, আকার, টেক্সট, এবং স্টাইল পরিবর্তন করা।
Code Example: CButton কাস্টমাইজ করা
void CMyDialog::OnInitDialog()
{
CDialogEx::OnInitDialog();
// CButton কন্ট্রোলের স্টাইল পরিবর্তন করা
CButton* pButton = (CButton*)GetDlgItem(IDC_MY_BUTTON);
pButton->SetWindowText(_T("Click Me!")); // বোতামের টেক্সট সেট করা
pButton->ModifyStyle(0, BS_FLAT); // বোতামের স্টাইল পরিবর্তন করা (ফ্ল্যাট স্টাইল)
pButton->SetFaceColor(RGB(0, 255, 0)); // বোতামের ব্যাকগ্রাউন্ড কালার পরিবর্তন
}
এখানে, SetWindowText() দ্বারা বোতামের টেক্সট সেট করা হচ্ছে এবং ModifyStyle() ফাংশন ব্যবহার করে বোতামের স্টাইল (যেমন flat button) পরিবর্তন করা হচ্ছে। আপনি face color পরিবর্তন করেও বোতামের রং কাস্টমাইজ করতে পারেন।
- বিভিন্ন স্টাইল কাস্টমাইজ করা:
BS_FLAT: ফ্ল্যাট বোতামBS_PUSHBUTTON: সাধারণ বোতামBS_DEFPUSHBUTTON: ডিফল্ট বোতামBS_CHECKBOX: চেকবক্স বোতাম
অন্যান্য কন্ট্রোল কাস্টমাইজ করা
MFC তে অন্যান্য কন্ট্রোল যেমন CEdit, CComboBox, CListBox, CSlider ইত্যাদি কাস্টমাইজ করা যায়। এই কন্ট্রোলগুলির স্টাইল, আকার, এবং আচরণ পরিবর্তন করা যেতে পারে।
CEdit কন্ট্রোল কাস্টমাইজ করা
CEdit সাধারণত টেক্সট ইনপুটের জন্য ব্যবহৃত হয়। আপনি এর আউটলাইন, রং, টেক্সট টাইপ ইত্যাদি কাস্টমাইজ করতে পারেন।
void CMyDialog::OnInitDialog()
{
CDialogEx::OnInitDialog();
// CEdit কন্ট্রোলের স্টাইল কাস্টমাইজ করা
CEdit* pEdit = (CEdit*)GetDlgItem(IDC_MY_EDIT);
pEdit->SetWindowText(_T("Hello World!"));
pEdit->SetSel(0, -1); // টেক্সট সিলেক্ট করা
pEdit->ModifyStyle(ES_MULTILINE, ES_PASSWORD); // মল্টিলাইন এবং পাসওয়ার্ড মোড একসাথে করা
}
- ভিন্ন স্টাইল কাস্টমাইজ করা:
ES_MULTILINE: মল্টিলাইন টেক্সট ফিল্ডES_PASSWORD: পাসওয়ার্ড ইনপুটES_READONLY: শুধুমাত্র পড়ার জন্যES_AUTOHSCROLL: অটো হরিজেন্টাল স্ক্রোল
CComboBox কাস্টমাইজ করা
CComboBox ব্যবহারকারীদের একটি ড্রপ-ডাউন লিস্ট থেকে অপশন সিলেক্ট করার সুযোগ দেয়।
void CMyDialog::OnInitDialog()
{
CDialogEx::OnInitDialog();
// CComboBox কন্ট্রোলের আইটেম অ্যাড করা
CComboBox* pComboBox = (CComboBox*)GetDlgItem(IDC_MY_COMBOBOX);
pComboBox->AddString(_T("Option 1"));
pComboBox->AddString(_T("Option 2"));
pComboBox->SetCurSel(0); // প্রথম অপশন সিলেক্ট করা
}
- ভিন্ন স্টাইল কাস্টমাইজ করা:
CBS_DROPDOWN: ড্রপডাউন মেনুCBS_SIMPLE: সাধারণ কেবল সিলেক্টেবল লিস্টCBS_AUTOHSCROLL: অটো হরিজেন্টাল স্ক্রোল
CListBox কাস্টমাইজ করা
CListBox কন্ট্রোলটি একাধিক অপশন বা আইটেম দেখাতে ব্যবহৃত হয়। এর স্টাইল, আকার ইত্যাদি কাস্টমাইজ করা যায়।
void CMyDialog::OnInitDialog()
{
CDialogEx::OnInitDialog();
// CListBox কন্ট্রোলের আইটেম অ্যাড করা
CListBox* pListBox = (CListBox*)GetDlgItem(IDC_MY_LISTBOX);
pListBox->AddString(_T("Item 1"));
pListBox->AddString(_T("Item 2"));
pListBox->SetCurSel(0); // প্রথম আইটেম সিলেক্ট করা
}
- ভিন্ন স্টাইল কাস্টমাইজ করা:
LBS_SINGLESEL: একটিই আইটেম সিলেক্ট করাLBS_MULTIPLESEL: একাধিক আইটেম সিলেক্ট করা
সারাংশ
MFC তে CStatic, CButton, CEdit, CComboBox, CListBox এবং অন্যান্য কন্ট্রোল কাস্টমাইজ করা সম্ভব এবং এটি অ্যাপ্লিকেশনকে আরও ব্যবহারকারী-বান্ধব এবং আকর্ষণীয় করে তোলে। আপনি কন্ট্রোলগুলির স্টাইল, আকার, রং, টেক্সট, এবং আচরণ পরিবর্তন করতে পারেন। এর মাধ্যমে আপনি আপনার অ্যাপ্লিকেশনকে আরও পেশাদারী এবং কার্যকরী করতে পারবেন।
Read more