Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
hp13
0 / 0 / 1
Регистрация: 20.10.2009
Сообщений: 11
1

Как вывести уровень громкости в ProgressBar

16.09.2014, 11:04. Просмотров 849. Ответов 2
Метки нет (Все метки)

Добрый день.
Подскажите пожалуйста, как вывести сам уровень громкости в прогресс баре.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private const int APPCOMMAND_VOLUME_MUTE = 0x80000;
        private const int APPCOMMAND_VOLUME_UP = 0xA0000;
        private const int APPCOMMAND_VOLUME_DOWN = 0x90000;
        private const int WM_APPCOMMAND = 0x319;
 
        [DllImport("user32.dll")]
        public static extern IntPtr SendMessageW(IntPtr hWnd, int Msg,
            IntPtr wParam, IntPtr lParam);
 
        private void btnMute_Click(object sender, EventArgs e)//Выключение-включение звука
        {
            SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle,
                (IntPtr)APPCOMMAND_VOLUME_MUTE);
        }
 
        private void btnIncVol_Click(object sender, EventArgs e)//Прибавление звука
        {
            SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle,
                (IntPtr)APPCOMMAND_VOLUME_UP);
        }
 
        private void btnDecVol_Click_1(object sender, EventArgs e)//Убавление звука
        {
            SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle,
                (IntPtr)APPCOMMAND_VOLUME_DOWN);
        }
    }
}
пытался сделать по данному способу, но без значения уровня громкости, не возможное его к чему-либо прицепить.
C#
1
2
3
4
5
 private void trackBar1_Scroll(object sender, EventArgs e)
        {
            SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle, (IntPtr)WM_APPCOMMAND);
            label1.Text = trackBar1.Value.ToString();
        }
спасибо.

Добавлено через 14 часов 10 минут
есть задумка сделать регулятор громкости, в котором будут клавиши прибавления и убавления звука, а так же отображение в прогресс баре громкости, вся загвоздка в том, что не получается вывести отображение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.09.2014, 11:04
Ответы с готовыми решениями:

Уровень шума Микрофона в ProgressBar
Немогу вывести (ProgresBar.Value = q;) значение переменной, вроди все так но не...

Как вывести время работы программы ПОСЛЕ завершения работы progressBar?
У меня почему-то сначала выводится время в MessageBox, а затем уже завершает...

Вывести формы в MDI на один уровень
Сижу голову ломаю - есть форма-MDI контейнер. Она запускает дочернюю форму. Из...

TrackBar при клике в трее, как регулятор громкости Windows
Ребят, возможно ли на C# такое сделать? Аналогия с громкостью в Windows. Я...

TreeView как узнать уровень узла?
Как узнать уровень узла, добавленного в TreeView, чтобы ограничить добавление...

2
SmashDream
40 / 32 / 24
Регистрация: 09.06.2012
Сообщений: 144
16.09.2014, 12:44 2
hp13, можно попробовать эмулировать ваш уровень громкости, если конечно изменение уровня громкости носит константный характер, а так же при начале первого воспроизведения уровень громкости равен условному нулю.
Конфигурируем:
C#
1
2
trackBar1.Maximum = 100; //предел вообще на эмпирическое усмотрение =)
trackBar1.Value = 0;
И по мере увеличения/уменьшения громкости соответственно увеличивать/уменьшать trackBar1.Value на это константное значение.
0
hp13
0 / 0 / 1
Регистрация: 20.10.2009
Сообщений: 11
16.09.2014, 13:55  [ТС] 3
я заранее извиняюсь, если ввел в заблуждение, мне необходим сам регулятор громкости системы, то есть тот который показывает реальную громкость, и его вывод на прогресс баре.
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
private void btnIncVol_Click(object sender, EventArgs e)//Прибавление звука
        {
            SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle,
                (IntPtr)APPCOMMAND_VOLUME_UP);
        }
 
        private void btnDecVol_Click_1(object sender, EventArgs e)//Убавление звука
        {
            SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle,
                (IntPtr)APPCOMMAND_VOLUME_DOWN);
        }

согласно вложению в сполере мы меняем громкость, но какая она не видно, если только не открыть в трее
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.09.2014, 13:55

Как выйти на 1 уровень вверх в TreeNode
У меня в тринод имеется некий путь к заданному ранее существующему узлу в...

Как пользоваться ProgressBar
Ребят блин не пойму как пользоваться прогресс баром! Лист бокс иногда дюже...

ProgressBar как BackgroundWorker
Есть код алгоритма сортировки, реализованный на WF, в который никак не могу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru