Похожие вопросы

доступ локальный asp.net веб-сайт из интернета
Как изменить ключ продукта Office 2007 / 2010?
Windows To Wine / получение исключения "не удалось загрузить файл или сборку [etc]"
Запуск приложений через планировщик задач windows
Как восстановить исходный код?
Почему проводник перезагружается автоматически, когда я убиваю его с процессом.Убить?
Как добавить форматированный код в документ Microsoft Word?
Как предотвратить завершение работы/блокировку/выход из системы Windows 7?
Что стоит за HEUR / AGEN.Один миллион двадцать три тысячи восемьсот тринадцать
VisualStudio 2017: узнайте, откуда берется фрагмент кода
Командная строка RDP вызов CMD на целевом компьютере
Как открыть Диспетчер конфигурации SQL
Не удается использовать unicode в имя файла вывода для ffmpeg перекодирования
Как добавить горячую клавишу для запуска программы?
Настройка подсветки синтаксиса в visual studio для C#

Как добавить горячую клавишу для запуска программы?

я развернул проект на клиентском компьютере. Можно ли добавить горячую клавишу для вызова этой программы. Как сделать его свернутым в трей, когда он срабатывает? (Пользователь все еще может открыть его, нажав на значок в трее)
Можно ли это сделать на уровне программирования?

5
c#
задан Wolf5370
источник

2 ответов

нельзя задать горячую клавишу с помощью кода C#... Ваше приложение должно выполняться, если вы хотите что-то установить, и вы хотите, чтобы вызвать его для запуска с помощью короткой клавиши... Конечно, это может быть установлено в настройках Вашего приложения... щелкните правой кнопкой мыши приложение, Настройки ru найти элемент, который позволяет указать короткую клавишу для запуска приложения.

к вопросу значок в трее. Вам просто нужно скрыть свою форму, я предполагаю, что для этого нужно создать приложение форм.

вы можете сделать это с помощью следующего кода:

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);
        }
    }
}

этот код взят из http://alanbondo.wordpress.com/2008/06/22/creating-a-system-tray-app-with-c/ который работает как шарм!

2
отвечен 2012-08-23 12:48:25
источник

вы можете использовать продукт, как Авто Горячие Клавиши что свободно и хорошо для определения горячих клавиш (и автоматическая проверка орфографии и т. д.).

для системного трея, обычный способ сделать это, чтобы не иметь проект как проект формы, но как консольный проект, который вызывает форму. Таким образом, форма не используется, пока он не вызывается из контекстного меню системного трея-посмотрите в NotifyIcon-простой пример здесь. Другой (более менее аккуратный) путь иметь основу от hiden на начала, но если форма не нужна, это пустая трата действительно respources.

1
отвечен Wolf5370 2012-08-23 12:52:43
источник

Другие вопросы c#