Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.97/173: Рейтинг темы: голосов - 173, средняя оценка - 4.97
1 / 1 / 0
Регистрация: 13.03.2012
Сообщений: 78

Создать плеер хотя бы с кнопкой "открыть" "играть" и с TrackBar для проигрывания mp3

19.04.2012, 19:54. Показов 37868. Ответов 35
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Мне требуется создать плеер, я смотрел исходники, но они мне не подходят.
Прошу помочь создать плеер хотя бы с кнопкой "открыть" "играть" и с TrackBar для проигрывания mp3
Заранее спасибо
1
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.04.2012, 19:54
Ответы с готовыми решениями:

Свой плеер для проигрывания видео
Добрый день. На данный момент я понял, что можно сделать плеер через html5 (и он будет без проблем проигрываться во всех браузерах в том...

Библиотека для проигрывания MP3
Всем доброго времени суток. Не могли бы подсказать библиотеку для воспроизведения mp3? Интересует, чтобы в ней была возможность...

Нужен плеер на сайт для проигрывания интернет-радио
Хочу на сайт запилить плеер с плейлистом нескольких инет-радио. http://lovi.fm/embed/ - вот что-то типа такого, чтобы можно было выбирать...

35
35 / 25 / 13
Регистрация: 12.02.2011
Сообщений: 178
Записей в блоге: 1
19.04.2012, 23:56
ну это легко же
Добавь
WMPlib
Listbox
button
из панели элементов перетяни windows media player

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
 String[] files, Paths;
        private void button1_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                files = openFileDialog1.SafeFileNames;
                Paths = openFileDialog1.FileNames;
 
                for (int i = 0; i < files.Length; i++)
                {
                    listBox1.Items.Add(files[i]);
 
                }
 
 
            }
 
 
 
        }
 
        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            axWindowsMediaPlayer1.URL = Paths[listBox1.SelectedIndex];
        }
 
      
        
    }
}
вставь ....

еще на форму не забудь openFileDialog1

и F5
1
1 / 1 / 0
Регистрация: 13.03.2012
Сообщений: 78
20.04.2012, 18:51  [ТС]
Мне не совсем понятно что такое WMPLib, я нуб в программировании.
0
Українець
424 / 318 / 16
Регистрация: 26.09.2009
Сообщений: 844
20.04.2012, 19:25
Наверное найти надо ее и скачать
0
35 / 25 / 13
Регистрация: 12.02.2011
Сообщений: 178
Записей в блоге: 1
21.04.2012, 21:51
Цитата Сообщение от Roma112 Посмотреть сообщение
Мне не совсем понятно что такое WMPLib, я нуб в программировании.
на панели элементов нажми ПКМ выбрать элемент подожми минуты 2 потом СОМ-компоненты и внизу Windows Media Player
потом из панели элементов перетяни Windows Media Player на форму

Добавлено через 22 секунды
Цитата Сообщение от freest Посмотреть сообщение
Наверное найти надо ее и скачать
написал как найти)
1
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
22.04.2012, 00:17
Лучший ответ Сообщение было отмечено как решение

Решение

соглашусь с тем, что лучше использовать WindowsMediaPlayer, как таковой сам плеер не нужен, просто подключите в ссылках библиотеку wmp.dll, которая находится в папке Windows\System32 или Windows\SysWOW64. Не забудьте, если делаете проект на .NET4 используйте интерфейс WindowsMediaPlayer, на остальных .NET класс WindowsMediaPlayerClass. Полный код того, что вы запросили (сам проект в прикреплённых)
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
using System;
using System.Windows.Forms;
using WMPLib;
 
namespace A_Player
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        WindowsMediaPlayer wmp = new WindowsMediaPlayer();
        bool pausePlay;
 
        private void button1_Click(object sender, EventArgs e)
        {
            var ofd = new OpenFileDialog();
            if ((ofd.ShowDialog() == DialogResult.OK) && (ofd.FileName != string.Empty))
            {
                wmp.URL = ofd.FileName;
                wmp.controls.play();
                trackBar1.Enabled = true;
                timer1.Enabled = true;
                timer1.Interval = 1000;
                label1.Text = "Playing";
            }
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            pausePlay = !pausePlay;
            if (pausePlay)
            {
                wmp.controls.pause();
                label1.Text = "Paused";
            }
            if (!pausePlay)
            {
                wmp.controls.play();
                label1.Text = "Playing";
            }
        }
 
        private void trackBar1_Scroll(object sender, EventArgs e)
        {
            wmp.controls.currentPosition = trackBar1.Value;
        }
 
        private void timer1_Tick(object sender, EventArgs e)
        {
            trackBar1.Maximum = Convert.ToInt32(wmp.currentMedia.duration);
            trackBar1.Value = Convert.ToInt32(wmp.controls.currentPosition);
 
            if (wmp != null)
            {
                int s = (int)wmp.currentMedia.duration;
                int h = s / 3600;
                int m = (s - (h * 3600)) / 60;
                s = s - (h * 3600 + m * 60);
                label3.Text = String.Format("{0:D}:{1:D2}:{2:D2}", h, m, s);
 
                s = (int)wmp.controls.currentPosition;
                h = s / 3600;
                m = (s - (h * 3600)) / 60;
                s = s - (h * 3600 + m * 60);
                label2.Text = String.Format("{0:D}:{1:D2}:{2:D2}", h, m, s);
            }
            else
            {
                label3.Text = "0:00:00";
                label2.Text = "0:00:00";
            }
        }
    }
}
Вложения
Тип файла: rar A_Player.rar (104.9 Кб, 1088 просмотров)
6
35 / 25 / 13
Регистрация: 12.02.2011
Сообщений: 178
Записей в блоге: 1
22.04.2012, 00:23
Цитата Сообщение от _lunar_ Посмотреть сообщение
соглашусь с тем, что лучше использовать WindowsMediaPlayer, как таковой сам плеер не нужен, просто подключите в ссылках библиотеку wmp.dll, которая находится в папке Windows\System32 или Windows\SysWOW64. Не забудьте, если делаете проект на .NET4 используйте интерфейс WindowsMediaPlayer, на остальных .NET класс WindowsMediaPlayerClass. Полный код того, что вы запросили (сам проект в прикреплённых)
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
using System;
using System.Windows.Forms;
using WMPLib;
 
namespace A_Player
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        WindowsMediaPlayer wmp = new WindowsMediaPlayer();
        bool pausePlay;
 
        private void button1_Click(object sender, EventArgs e)
        {
            var ofd = new OpenFileDialog();
            if ((ofd.ShowDialog() == DialogResult.OK) && (ofd.FileName != string.Empty))
            {
                wmp.URL = ofd.FileName;
                wmp.controls.play();
                trackBar1.Enabled = true;
                timer1.Enabled = true;
                timer1.Interval = 1000;
                label1.Text = "Playing";
            }
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            pausePlay = !pausePlay;
            if (pausePlay)
            {
                wmp.controls.pause();
                label1.Text = "Paused";
            }
            if (!pausePlay)
            {
                wmp.controls.play();
                label1.Text = "Playing";
            }
        }
 
        private void trackBar1_Scroll(object sender, EventArgs e)
        {
            wmp.controls.currentPosition = trackBar1.Value;
        }
 
        private void timer1_Tick(object sender, EventArgs e)
        {
            trackBar1.Maximum = Convert.ToInt32(wmp.currentMedia.duration);
            trackBar1.Value = Convert.ToInt32(wmp.controls.currentPosition);
 
            if (wmp != null)
            {
                int s = (int)wmp.currentMedia.duration;
                int h = s / 3600;
                int m = (s - (h * 3600)) / 60;
                s = s - (h * 3600 + m * 60);
                label3.Text = String.Format("{0:D}:{1:D2}:{2:D2}", h, m, s);
 
                s = (int)wmp.controls.currentPosition;
                h = s / 3600;
                m = (s - (h * 3600)) / 60;
                s = s - (h * 3600 + m * 60);
                label2.Text = String.Format("{0:D}:{1:D2}:{2:D2}", h, m, s);
            }
            else
            {
                label3.Text = "0:00:00";
                label2.Text = "0:00:00";
            }
        }
    }
}

Зато в моем варианте есть playlist
1
22.04.2012, 00:27

Не по теме:

Цитата Сообщение от logo424 Посмотреть сообщение
Зато в моем варианте есть playlist :D
зато в моём варианте есть полностью рабочий trackBar с возможностью перемещения по треку, его длинна и текущее положение. Будем и дальше мериться... как дети малые :) Что ТС заказывал, то и сделал. Нужно профессионально подходить к вопросу, а не выдумывать уж извините "отсебячину".

0
35 / 25 / 13
Регистрация: 12.02.2011
Сообщений: 178
Записей в блоге: 1
22.04.2012, 00:44
Цитата Сообщение от _lunar_ Посмотреть сообщение

Не по теме:


зато в моём варианте есть полностью рабочий trackBar с возможностью перемещения по треку, его длинна и текущее положение. Будем и дальше мериться... как дети малые :) Что ТС заказывал, то и сделал. Нужно профессионально подходить к вопросу, а не выдумывать уж извините "отсебячину".

это у меня тоже работает
Миниатюры
Создать плеер хотя бы с кнопкой "открыть" "играть" и с TrackBar для проигрывания mp3  
0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
22.04.2012, 00:46
вы реализуете через плеер, я же через форму с использованием библиотеки этого плеера. Читайте внимательнее вопрос
Цитата Сообщение от Roma112 Посмотреть сообщение
Мне требуется создать плеер...
Прошу помочь создать плеер хотя бы с кнопкой "открыть" "играть" и с TrackBar для проигрывания mp3
главное слово создать, а не использовать готовый.
если надо могу реализовать на MDX, там уж точно никакого стандартного плеера нет.
0
35 / 25 / 13
Регистрация: 12.02.2011
Сообщений: 178
Записей в блоге: 1
22.04.2012, 00:48
Цитата Сообщение от _lunar_ Посмотреть сообщение
вы реализуете через плеер, я же через форму.

Ну ладно
0
Українець
424 / 318 / 16
Регистрация: 26.09.2009
Сообщений: 844
22.04.2012, 00:50
это главное сообщение темы, оно прикреплено сверху на всех страницах
Цитата Сообщение от logo424 Посмотреть сообщение
Вам уже прислали ГОТОВЫЙ ПЛЕЕР что не нравится то?
0
35 / 25 / 13
Регистрация: 12.02.2011
Сообщений: 178
Записей в блоге: 1
22.04.2012, 00:55
Цитата Сообщение от freest Посмотреть сообщение
это главное сообщение темы, оно прикреплено сверху на всех страницах
я уже понял

на время не посмотрел
0
24 / 23 / 3
Регистрация: 21.04.2012
Сообщений: 253
22.04.2012, 03:45
_lunar_, можете, пожалуйста, написать коментарии к своему коду ? *_*
0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
22.04.2012, 12:16
Цитата Сообщение от Tweekaz Посмотреть сообщение
_lunar_, можете, пожалуйста, написать коментарии к своему коду ? *_*
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
using System;
using System.Windows.Forms;
using WMPLib; // пространство имён библиотеки Windows\System32\wmp.dll
 
namespace A_Player
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        WindowsMediaPlayer wmp = new WindowsMediaPlayer(); // переменная интерфейса WindowsMediaPlayer
        bool pausePlay; // переменная типа bool, по умолчанию равна false
 
        private void button1_Click(object sender, EventArgs e)
        {
            // создаём Диалоговое окно и выполняем условия открытия файла
            var ofd = new OpenFileDialog();
            if ((ofd.ShowDialog() == DialogResult.OK) && (ofd.FileName != string.Empty))
            {
                wmp.URL = ofd.FileName; // путь к файлу
                wmp.controls.play(); // запуск файла
                trackBar1.Enabled = true; // включаем trackBar (выключен для обработки исключений)
                timer1.Enabled = true; // включаем timer (выключен для обработки исключений)
                timer1.Interval = 1000; // задаём интервал в 1000 милисек. = 1 сек.
                label1.Text = "Playing";
            }
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            // с помощью переменной типа bool делаем условие
            pausePlay = !pausePlay;
            if (pausePlay) // если кнопка нажата
            {
                wmp.controls.pause(); // делаем паузу
                label1.Text = "Paused";
            }
            if (!pausePlay) // если нажата ещё раз
            {
                wmp.controls.play(); // снимем паузу
                label1.Text = "Playing";
            }
        }
 
        private void trackBar1_Scroll(object sender, EventArgs e)
        {
            // положение движка определяется текущем положением трека
            wmp.controls.currentPosition = trackBar1.Value;
        }
 
        private void timer1_Tick(object sender, EventArgs e)
        {
            // максимальное положение движка есть продолжительность трека
            trackBar1.Maximum = Convert.ToInt32(wmp.currentMedia.duration);
            trackBar1.Value = Convert.ToInt32(wmp.controls.currentPosition);
 
            // несложные математические расчёты для вычисления продолжительности трека и текущего положения
            if (wmp != null)
            {
                int s = (int)wmp.currentMedia.duration;
                int h = s / 3600;
                int m = (s - (h * 3600)) / 60;
                s = s - (h * 3600 + m * 60);
 
                // указываем продолжительность трека в формате чч:мм:сс
                label3.Text = String.Format("{0:D}:{1:D2}:{2:D2}", h, m, s);
 
                s = (int)wmp.controls.currentPosition;
                h = s / 3600;
                m = (s - (h * 3600)) / 60;
                s = s - (h * 3600 + m * 60);
 
                // указываем текущее положение трека с интервалом 1 сек.
                label2.Text = String.Format("{0:D}:{1:D2}:{2:D2}", h, m, s);
            }
            else
            {
                label3.Text = "0:00:00";
                label2.Text = "0:00:00";
            }
        }
    }
}
4
35 / 25 / 13
Регистрация: 12.02.2011
Сообщений: 178
Записей в блоге: 1
22.04.2012, 15:23
Сделай еще показ названия песни и 5+ )
0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
22.04.2012, 18:31
Цитата Сообщение от logo424 Посмотреть сообщение
Сделай еще показ названия песни
http://download.banshee.fm/taglib-sharp/
C#
1
2
3
4
5
6
7
8
9
10
11
12
using TagLib;
...
private void button1_Click(object sender, EventArgs e)
{
    var ofd = new OpenFileDialog();
    if ((ofd.ShowDialog() == DialogResult.OK) && (ofd.FileName != string.Empty))
    {
         ...
         var file = File.Create(ofd.FileName); // не путать с System.IO.File
         Text = file.Tag.FirstPerformer + " - " + file.Tag.Title;
    }
}
3
1 / 1 / 0
Регистрация: 13.03.2012
Сообщений: 78
29.04.2012, 12:22  [ТС]
_lunar_, спс
0
4 / 4 / 0
Регистрация: 18.06.2012
Сообщений: 101
06.07.2012, 10:29
Цитата Сообщение от _lunar_ Посмотреть сообщение
соглашусь с тем, что лучше использовать WindowsMediaPlayer, как таковой сам плеер не нужен, просто подключите в ссылках библиотеку wmp.dll, которая находится в папке Windows\System32 или Windows\SysWOW64. Не забудьте, если делаете проект на .NET4 используйте интерфейс WindowsMediaPlayer, на остальных .NET класс WindowsMediaPlayerClass. Полный код того, что вы запросили (сам проект в прикреплённых)
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
using System;
using System.Windows.Forms;
using WMPLib;
 
namespace A_Player
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        WindowsMediaPlayer wmp = new WindowsMediaPlayer();
        bool pausePlay;
 
        private void button1_Click(object sender, EventArgs e)
        {
            var ofd = new OpenFileDialog();
            if ((ofd.ShowDialog() == DialogResult.OK) && (ofd.FileName != string.Empty))
            {
                wmp.URL = ofd.FileName;
                wmp.controls.play();
                trackBar1.Enabled = true;
                timer1.Enabled = true;
                timer1.Interval = 1000;
                label1.Text = "Playing";
            }
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            pausePlay = !pausePlay;
            if (pausePlay)
            {
                wmp.controls.pause();
                label1.Text = "Paused";
            }
            if (!pausePlay)
            {
                wmp.controls.play();
                label1.Text = "Playing";
            }
        }
 
        private void trackBar1_Scroll(object sender, EventArgs e)
        {
            wmp.controls.currentPosition = trackBar1.Value;
        }
 
        private void timer1_Tick(object sender, EventArgs e)
        {
            trackBar1.Maximum = Convert.ToInt32(wmp.currentMedia.duration);
            trackBar1.Value = Convert.ToInt32(wmp.controls.currentPosition);
 
            if (wmp != null)
            {
                int s = (int)wmp.currentMedia.duration;
                int h = s / 3600;
                int m = (s - (h * 3600)) / 60;
                s = s - (h * 3600 + m * 60);
                label3.Text = String.Format("{0:D}:{1:D2}:{2:D2}", h, m, s);
 
                s = (int)wmp.controls.currentPosition;
                h = s / 3600;
                m = (s - (h * 3600)) / 60;
                s = s - (h * 3600 + m * 60);
                label2.Text = String.Format("{0:D}:{1:D2}:{2:D2}", h, m, s);
            }
            else
            {
                label3.Text = "0:00:00";
                label2.Text = "0:00:00";
            }
        }
    }
}
компилирую прикрепленный проект все работает как надо.Пытаюсь сделать также в моем коде,трэкбар не ползет(

Добавлено через 25 минут
О))разобрался))спасибо за исходник)покажи еще как громкость сделать и 5++)
0
Эксперт С++
 Аватар для _lunar_
3701 / 2836 / 451
Регистрация: 03.05.2011
Сообщений: 5,193
Записей в блоге: 21
07.07.2012, 10:24
Цитата Сообщение от tiprocop Посмотреть сообщение
покажи еще как громкость сделать
диапазон громкости в wmp.dll находится от 0 до 100 http://msdn.microsoft.com/en-u... 85%29.aspx
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
private void trackBar2_Scroll(object sender, EventArgs e)
{
    if (trackBar2.Value == 10)
        wmp.settings.volume = 100;
    if (trackBar2.Value == 9)
        wmp.settings.volume = 90;
    if (trackBar2.Value == 8)
        wmp.settings.volume = 80;
    if (trackBar2.Value == 7)
        wmp.settings.volume = 70;
    if (trackBar2.Value == 6)
        wmp.settings.volume = 60;
    if (trackBar2.Value == 5)
        wmp.settings.volume = 50;
    if (trackBar2.Value == 4)
        wmp.settings.volume = 40;
    if (trackBar2.Value == 3)
        wmp.settings.volume = 30;
    if (trackBar2.Value == 2)
        wmp.settings.volume = 20;
    if (trackBar2.Value == 1)
        wmp.settings.volume = 10;
    if (trackBar2.Value == 0)
        wmp.settings.volume = 0;
}
в прикреплённых обновлённый плеер вместе с библиотекой taglib-sharp.dll, перемещать можно не только за рамку окна, но и за само окно.
Вложения
Тип файла: rar A_Player.rar (647.9 Кб, 523 просмотров)
4
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.07.2012, 10:24
Помогаю со студенческими работами здесь

Как настроить плеер для проигрывания треков со своего сайта
Здравствуйте, подскажите можно ли настроить плеер podfm на свой собственный сайт, чтобы воспроизводились mp3 файлы размещенные на...

Посоветуйте музыкальный плеер для проигрывания *.xm файлов с трекерной музыкой
здр. пжл, посоветуйте плеер для проигрывания *.xm файлов с трекерной музыкой в Ubuntu наподобие XMPlayer в Windows'е..

Как создать программу MP3 Плеер
Подскажите возможно ли в делфи создать свой MP3 проигрыватель?

mp3 плеер на сайте, нужно создать плейлист
Всем добрый вечер! Когда-то из шаблонов на &quot;народе&quot; слепил свой сайт, недавно его привёл в божеский вид, опять же обладая самыми...

Free OCX для проигрывания сильно сжатых небольших MP3- файлов
Не подскажете, где можно скачать исходники или работающий Сontrol для проигывания из VB MP3 c низкими битрейтами.Или файл .ACM для...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru