Вы должны войти, чтобы создавать сообщения и темы.

Маленький плеер на панели задач

Здравствуйте. 🖖

    Я использую windows 11 и панель задач очень большая, поэтому я подумал, что было бы очень полезно, если бы свободное место в ней было занято контроллером медиаплеера. То есть хотелось бы, чтобы в панели задач отображалось изображение и название песни и 3 кнопки для паузы и смены музыки.

Вопрос:

Как лучше всего это сделать?
1. Создав окно над панелью задач.
2. Или путем встраивания других элементов в окно панели задач?
3. Или по-другому?
4. И насколько сложно было бы создать такое приложение?

P. S.

Я думаю о написании приложений на C#.

Ken, привет.

Если честно, я не понял вообще в чем проблема и как это связано с программированием на C#, если вопрос не в коде даже... Пожалуйста, опиши вопрос яснее и, вероятно, придется тебе это сделать в теме Windows 11, а не в программировании на C# =)

Спасибо за ответ и за совет.  

    Хочу занять свободное место на панели задач миниплеером, который будет брать информацию из "SystemMediaTransportControls" и сможет ставить на паузу, менять следующую музыку и т.д.

Это будет выглядеть примерно так: 
 

Вопрос был о том, как разместить такие элементы в панели задач.

1. Создав окно над панелью задач.
2. Или путем встраивания других элементов в окно панели задач.    (как такое можно бы сделать ?)
3. Или по-другому.

Я хотел бы сделать это приложение на c#, и вопрос более тесно связан с c#, чем с windows, поэтому я подумал, что будет логичнее разместить вопрос здесь.

Цитата: Ken от 19.11.2022, 14:59

Спасибо за ответ и за совет.  

    Хочу занять свободное место на панели задач миниплеером, который будет брать информацию из "SystemMediaTransportControls" и сможет ставить на паузу, менять следующую музыку и т.д.

Это будет выглядеть примерно так: 
<img class="lazyload" src="data:;base64," alt="" width="367" height="109" data-orig-src="https://i.imgur.com/uR5FFiH.png" style="color: #25d39d !important" /> <img class="lazyload" src="data:;base64," alt="" width="360" height="127" data-orig-src="https://i.imgur.com/xD73IGP.png" style="color: #25d39d !important" />

Вопрос был о том, как разместить такие элементы в панели задач.

1. Создав окно над панелью задач.
2. Или путем встраивания других элементов в окно панели задач.    (как такое можно бы сделать ?)
3. Или по-другому.

Я хотел бы сделать это приложение на c#, и вопрос более тесно связан с c#, чем с windows, поэтому я подумал, что будет логичнее разместить вопрос здесь.

Приветствую, вопрос действительно интересный. 

Для отображения программы на панели задач в C# можно использовать класс СкопированоTaskbarManager из пространства имен СкопированоMicrosoft.WindowsAPICodePack.Taskbar. Этот класс предоставляет методы для управления панелью задач, такие как установка значения прогресса, иконок наложения, списков перехода и тд.

пример кода

using Microsoft.WindowsAPICodePack.Taskbar;
using System.Windows.Forms;

class Program
{
    static void Main(string[] args)
    {
        // Создание нового экземпляра формы
        MyForm form = new MyForm();

        // Установка формы для отображения на панели задач
        TaskbarManager.Instance.SetApplicationIdForSpecificWindow(form.Handle, "MyApplicationId");

        // Запуск формы
        Application.Run(form);
    }
}

Под спойлером код использует класс СкопированоTaskbarManager для установки СкопированоApplicationId для конкретного дескриптора окна формы на "MyApplicationId". Это приведет к отображению формы на панели задач.

Большое спасибо.