İstemci PC'ye bir proje dağıttım. Bu programı çağırmak için bir kısayol tuşu eklemek mümkün mü. Tetiklendiğinde tepsiye nasıl küçültülür? (Kullanıcı hala tepsideki simgesine tıklayarak açabilir) Bunu programlama seviyesinde yapmak mümkün müdür?
İstemci PC'ye bir proje dağıttım. Bu programı çağırmak için bir kısayol tuşu eklemek mümkün mü. Tetiklendiğinde tepsiye nasıl küçültülür? (Kullanıcı hala tepsideki simgesine tıklayarak açabilir) Bunu programlama seviyesinde yapmak mümkün müdür?
Yanıtlar:
C # kodunu kullanarak bir kısayol tuşu ayarlayamazsınız ... Bir şey ayarlamak istiyorsanız uygulamanızın çalışması gerekir ve bir kısayol tuşuyla çalıştırılmasını tetiklemek istiyorsanız ... Elbette bu, uygulamanızın ayarlarında ayarlanabilir. .. uygulamanıza sağ tıklayın, ayarlar ve uygulamayı başlatmak için bir kısayol tuşu belirlemenizi sağlayan öğeyi bulun.
Tepsi simgesi sorusuna. Sadece formunu saklaman gerekiyor, bunun için bir form uygulaması oluşturduğunu sanıyorum.
Bunu aşağıdaki kodla yapabilirsiniz:
using System;
using System.Drawing;
using System.Windows.Forms;
namespace MyTrayApp
{
public class SysTrayApp : Form
{
[STAThread]
public static void Main()
{
Application.Run(new SysTrayApp());
}
private NotifyIcon trayIcon;
private ContextMenu trayMenu;
public SysTrayApp()
{
// Create a simple tray menu with only one item.
trayMenu = new ContextMenu();
trayMenu.MenuItems.Add("Exit", OnExit);
// Create a tray icon. In this example we use a
// standard system icon for simplicity, but you
// can of course use your own custom icon too.
trayIcon = new NotifyIcon();
trayIcon.Text = "MyTrayApp";
trayIcon.Icon = new Icon(SystemIcons.Application, 40, 40);
// Add menu to tray icon and show it.
trayIcon.ContextMenu = trayMenu;
trayIcon.Visible = true;
}
protected override void OnLoad(EventArgs e)
{
Visible = false; // Hide form window.
ShowInTaskbar = false; // Remove from taskbar.
base.OnLoad(e);
}
private void OnExit(object sender, EventArgs e)
{
Application.Exit();
}
protected override void Dispose(bool isDisposing)
{
if (isDisposing)
{
// Release the icon resource.
trayIcon.Dispose();
}
base.Dispose(isDisposing);
}
}
}
bu kod alındı http://alanbondo.wordpress.com/2008/06/22/creating-a-system-tray-app-with-c/ bir cazibe gibi çalışıyor!
Gibi bir ürün kullanabilirsiniz Otomatik Kısayol Tuşları hangi kısayol tuşları (ve otomatik yazım denetimi vb) tanımlamak için ücretsiz ve iyi.
Sistem Tepsisi için bunu yapmanın genel yolu, projeyi form projesi olarak değil, form çağıran bir konsol projesi olarak kullanmaktır. Bu şekilde form, sistem tepsisi içerik menüsünden çağrılana kadar kullanılmaz - NotifyIcon'a - Basit örnek İşte . Diğer (daha az düzenli) yol, ana hattın başlangıçta gizlenmesini sağlamaktır, ancak form gerekli değilse, gerçekten bir kaynak israfıdır.