Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > บทความจากสมาชิก > Windows Forms กับ System Tray Icon การทำ Application ให้ซ่อนจาก Taskbar (VB.Net,C#)



 
Clound SSD Virtual Server

Windows Forms กับ System Tray Icon การทำ Application ให้ซ่อนจาก Taskbar (VB.Net,C#)

Windows Forms กับ System Tray Icon การทำ Application ให้ซ่อนจาก Taskbar (VB.Net,C#)ในหลายๆ Application เราจะเห็นว่าเมื่อมีการเปิดโปรแกรมขึ้นมา และย่อโปรแกรม จะเห็นว่า Icon บน Taskbar ที่เป็น Tab จะถูกย่อไปเก็บลง Tray Icon (มุมเล็กๆ ตรงล่างขวา) เราจะเรียกตำแหน่งตรงนี้ว่า Tray Icon ซึ่งโปรแกรมที่ซ่อนอยู่ อาจจะกำลังทำงานอยู่ หรือ พร้อมทำงานตลอดเวลา ขึ้นอยู่ว่าหน้าที่ของมันมีไว้ทำอะไร และ บทความนี้จะเป็นเทคนิคการเขียน Windows Form Application ให้สามารถซ่อน Icon ไปอยู่ที่ Tray Icon แบบง่ายๆ โดยจะยกตัวอย่างการ ย่อ (Hide) และการ แสดง (Show) รวมทั้งการทำเมนู Exit (ออกจากโปรแกรม)



Windows Form Application and System Tray Icon


ในตัวอย่างนี้จะใช้ Control อยู่ประมาณ 2-3 ตัว เช่น ContextMenuStrip และ NotifyIcon ซึ่งตัวอย่างมีทั้งของ VB.Net และ C#

Windows Form Application and System Tray Icon

เริ่มต้นด้วยการสร้าง Project ขึ้นมาใหม่บน Visual Studio

Windows Form Application and System Tray Icon

ออกแบบ Form ง่ายๆ และสร้าง Label ดังรูป

Windows Form Application and System Tray Icon

กำหนด Property ของ Form โดยกำหนด MaximizeBox = False, StartPosition = CenterScreen

Windows Form Application and System Tray Icon

สร้าง Control ของ ContextMenuStrip และสร้าง Item : Show , Exit

Windows Form Application and System Tray Icon

สร้าง Event Click (ด้วยการดับเบิ้ลคลิกที่เมนู) เราจะได้ Event Click ของ Show และ Exit








Windows Form Application and System Tray Icon

สร้าง Control ของ NotifyIcon ด้วยการลากมาไว้บน Form

Windows Form Application and System Tray Icon

กำหนด Property ของ NotifyIcon ด้วยการเลือก ContextMenuStrip และ Icon เพื่อความสวยงาม

Windows Form Application and System Tray Icon

จากนั้นไปที่ Form เลือกสร้าง Event ว่า Move

Windows Form Application and System Tray Icon

เราจะได้ Event ของ Move

Windows Form Application and System Tray Icon

คลิกที NotifyIcon ที่ได้สร้างไว้ก่อนหน้านี้และสร้าง Event ว่า MouseDoubleClick

จากนั้นให้เขียน Code แต่ล่ะ Event ดังนี้

Code (C#)
       private void showToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Show();
            this.WindowState = FormWindowState.Normal;
        }

        private void exitToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void Form1_Move(object sender, EventArgs e)
        {
            if (this.WindowState == FormWindowState.Minimized)
            {
                this.Hide();
                this.notifyIcon1.ShowBalloonTip(100, "Notify Message", "Please click for see more detail..", ToolTipIcon.Info);
            }
        }

        private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            this.Show();
            this.WindowState = FormWindowState.Normal;
        }

ทดสอบการทำงาน

Windows Form Application and System Tray Icon

เมื่อเปิดโปรแกรมและกดที่ปุ่ม Minimize หรือ ย่อหน้าจอ

Windows Form Application and System Tray Icon

โปรแกรมจะถูกย่อมาเก็บไว้ที่ Tray Icon และ แสดง Message ที่เรากำหนดไว้

Windows Form Application and System Tray Icon

เราสามารถดับเบิ้ลคลิกที่ Icon เพื่อเปิด

Windows Form Application and System Tray Icon

หรือคลิกขวาที่ Icon จะมีเมนู Show และ Exit ให้เลือก

Windows Form Application and System Tray Icon

เมื่อคลิกที่ Show ก็จะแสดงโปรแกรมขึ้นมา และคลิก Exit ก็จะออกจากโปรแกรม








Code (VB.NET)
Private Sub showToolStripMenuItem_Click(sender As Object, e As EventArgs)
	Me.Show()
	Me.WindowState = FormWindowState.Normal
End Sub

Private Sub exitToolStripMenuItem_Click(sender As Object, e As EventArgs)
	Application.Exit()
End Sub

Private Sub Form1_Move(sender As Object, e As EventArgs)
	If Me.WindowState = FormWindowState.Minimized Then
		Me.Hide()
		Me.notifyIcon1.ShowBalloonTip(100, "Notify Message", "Please click for see more detail..", ToolTipIcon.Info)
	End If
End Sub

Private Sub notifyIcon1_MouseDoubleClick(sender As Object, e As MouseEventArgs)
	Me.Show()
	Me.WindowState = FormWindowState.Normal
End Sub


   
Share
Bookmark.   

  By : TC Admin
  Article : บทความเป็นการเขียนโดยสมาชิก หากมีปัญหาเรื่องลิขสิทธิ์ กรุณาแจ้งให้ทาง webmaster ทราบด้วยครับ
  Score Rating :
  Create Date : 2017-04-18
  Download : No files
Sponsored Links
ThaiCreate.Com Forum


Comunity Forum Free Web Script
Jobs Freelance Free Uploads
Free Web Hosting Free Tools

สอน PHP ผ่าน Youtube ฟรี
สอน Android การเขียนโปรแกรม Android
สอน Windows Phone การเขียนโปรแกรม Windows Phone 7 และ 8
สอน iOS การเขียนโปรแกรม iPhone, iPad
สอน Java การเขียนโปรแกรม ภาษา Java
สอน Java GUI การเขียนโปรแกรม ภาษา Java GUI
สอน JSP การเขียนโปรแกรม ภาษา Java
สอน jQuery การเขียนโปรแกรม ภาษา jQuery
สอน .Net การเขียนโปรแกรม ภาษา .Net
Free Tutorial
สอน Google Maps Api
สอน Windows Service
สอน Entity Framework
สอน Android
สอน Java เขียน Java
Java GUI Swing
สอน JSP (Web App)
iOS (iPhone,iPad)
Windows Phone
Windows Azure
Windows Store
Laravel Framework
Yii PHP Framework
สอน jQuery
สอน jQuery กับ Ajax
สอน PHP OOP (Vdo)
Ajax Tutorials
SQL Tutorials
สอน SQL (Part 2)
JavaScript Tutorial
Javascript Tips
VBScript Tutorial
VBScript Validation
Microsoft Access
MySQL Tutorials
-- Stored Procedure
MariaDB Database
SQL Server Tutorial
SQL Server 2005
SQL Server 2008
SQL Server 2012
-- Stored Procedure
Oracle Database
-- Stored Procedure
SVN (Subversion)
แนวทางการทำ SEO
ปรับแต่งเว็บให้โหลดเร็ว


Hit Link
   







Load balance : Server 05
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่