আমি কীভাবে উইন্ডোজ ফর্মগুলি ব্যবহার করে একটি বোতামের উপরে একটি সরঞ্জামদণ্ডটি প্রদর্শন করতে পারি ?
আমি কীভাবে উইন্ডোজ ফর্মগুলি ব্যবহার করে একটি বোতামের উপরে একটি সরঞ্জামদণ্ডটি প্রদর্শন করতে পারি ?
উত্তর:
টুলটিপটি আসলে একটি উইনফর্মস নিয়ন্ত্রণ যা একক ফর্মের একাধিক উপাদানগুলির জন্য সরঞ্জাম টিপস প্রদর্শন করে।
বলুন আপনার বোতামটি মাইবাটন বলে।
কার্সারটি বোতামের ওপরে উঠলে টুলটিপটি স্বয়ংক্রিয়ভাবে উপস্থিত হবে, তবে যদি আপনি এটি অগ্রগতিভাবে প্রদর্শন করতে চান, কল করুন
MyToolTip.Show("Tooltip text goes here", MyButton)
আপনার কোডটিতে টুলটিপটি দেখানোর জন্য এবং মাইটুলটিপ.হাইড (মাইবাটন) এটিকে আবার অদৃশ্য করার জন্য
ফর্ম ডিজাইনার ব্যবহার:
আপনি নিম্নলিখিত কলটি ব্যবহার করে সরঞ্জাম টিপটি প্রগতিগতভাবে সেট করতে পারেন:
this.toolTip1.SetToolTip(this.targetControl, "My Tool Tip");
আপনি টুলটিপ ক্লাসটি ব্যবহার করতে পারেন:
একটি নিয়ন্ত্রণের জন্য একটি সরঞ্জামশালা তৈরি করা
উদাহরণ:
private void Form1_Load(object sender, System.EventArgs e)
{
System.Windows.Forms.ToolTip ToolTip1 = new System.Windows.Forms.ToolTip();
ToolTip1.SetToolTip(this.Button1, "Hello");
}
new ToolTip().SetToolTip(this.Button1, "Hello");
ডিফল্ট টুলটিপের জন্য এটি ব্যবহার করা যেতে পারে -
System.Windows.Forms.ToolTip ToolTip1 = new System.Windows.Forms.ToolTip();
ToolTip1.SetToolTip(this.textBox1, "Hello world");
টুলটিপ মেসেজের জন্য যদি ফর্ম্যাটিং প্রয়োজন হয় তবে একটি কাস্টমাইজড টুলটিপ ব্যবহার করা যেতে পারে। এটি কাস্টম ফর্ম্যাট করার মাধ্যমে তৈরি করা যেতে পারে এবং নিয়ন্ত্রণের মাউস হোভার ইভেন্টে এটি টুলটিপ ডায়ালগ হিসাবে ব্যবহার করতে পারে। আরও তথ্যের জন্য দয়া করে নীচের লিঙ্কটি চেক করুন -
http://newapputil.blogspot.in/2015/08/create-custom-tooltip-dialog-from-form.html
ট্যাগ বৈশিষ্ট্যে অলস এবং কমপ্যাক্ট সংরক্ষণের পাঠ্য
আপনি যদি কিছুটা অলস হন এবং অন্য কোনও কিছুর জন্য নিয়ন্ত্রণগুলির ট্যাগ সম্পত্তিটি ব্যবহার না করেন তবে আপনি এটি টিপটিপ টেক্সটটি সঞ্চয় করতে ব্যবহার করতে পারেন এবং মাউসহোভার ইভেন্ট হ্যান্ডলারগুলিকে একসাথে এই জাতীয় নিয়ন্ত্রণগুলিতে নিয়োগ করতে পারেন:
private System.Windows.Forms.ToolTip ToolTip1;
private void PrepareTooltips()
{
ToolTip1 = new System.Windows.Forms.ToolTip();
foreach(Control ctrl in this.Controls)
{
if (ctrl is Button && ctrl.Tag is string)
{
ctrl.MouseHover += new EventHandler(delegate(Object o, EventArgs a)
{
var btn = (Control)o;
ToolTip1.SetToolTip(btn, btn.Tag.ToString());
});
}
}
}
এই ক্ষেত্রে ট্যাগ বৈশিষ্ট্যে স্ট্রিংযুক্ত সমস্ত বোতামকে একটি মাউসহোভার ইভেন্ট বরাদ্দ করা হয় । এটি কমপ্যাক্ট রাখতে মাউসহোভার ইভেন্টটি ল্যাম্বডা এক্সপ্রেশনটি ব্যবহার করে ইনলাইনটি সংজ্ঞায়িত করা হয়েছে। ইভেন্টে যে কোনও বোতাম আটকানোতে তার ট্যাগ পাঠ্যটি সরঞ্জামদণ্ডে নির্ধারিত হবে এবং প্রদর্শিত হবে।
.NET ফ্রেমওয়ার্কটি একটি টুলটিপ শ্রেণি সরবরাহ করে। আপনার ফর্মটিতে এর মধ্যে একটি যোগ করুন এবং তারপরে প্রতিটি আইটেমের জন্য মাউসহোভার ইভেন্টে আপনার একটি টুলটিপ চাইলে নীচের মতো কিছু করুন:
private void checkBox1_MouseHover(object sender, EventArgs e)
{
toolTip1.Show("text", checkBox1);
}
private void Form1_Load(object sender, System.EventArgs e)
{
ToolTip toolTip1 = new ToolTip();
toolTip1.AutoPopDelay = 5000;
toolTip1.InitialDelay = 1000;
toolTip1.ReshowDelay = 500;
toolTip1.ShowAlways = true;
toolTip1.SetToolTip(this.button1, "My button1");
toolTip1.SetToolTip(this.checkBox1, "My checkBox1");
}
ডেভেকের উত্তরের ভিত্তিতে , আমি একটি নিয়ন্ত্রণ এক্সটেনশান তৈরি করেছি:
public static void SetToolTip(this Control control, string txt)
{
new ToolTip().SetToolTip(control, txt);
}
তারপরে আপনি কোনও একক লাইনের সাহায্যে কোনও নিয়ন্ত্রণের জন্য সরঞ্জামটিপ সেট করতে পারেন:
this.MyButton.SetToolTip("Hello world");
অবশ্যই, কেবল মাউস হোভার ইভেন্টটি পরিচালনা করুন এবং একটি সরঞ্জাম টিপ প্রদর্শন করতে বলুন। টি গ্লোবাল বা কনস্ট্রাক্টর ব্যবহার করে সংজ্ঞায়িত একটি টুলটিপ:
ToolTip t = new ToolTip();
তারপরে ইভেন্ট হ্যান্ডলার:
private void control_MouseHover(object sender, EventArgs e)
{
t.Show("Text", (Control)sender);
}