🪞.Net Framework/C# Winform
wav플레이어 만들기
개발환경 >> Visual Studio
언어 >> C# WinForm
운영체제 >> Windows10
안녕하세요.
이번에는 wav음악플레이어를 간단하게 만들어봤어요
심심해서 Xamarin으로 컴퓨터랑 핸드폰연결해서 놀다가
갑자기 뮤직플레이어만들어보고싶어서 급하게 만들어봤습니닷
[[[ 소스코드 ]]]
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Media;
using System.Windows.Forms;
namespace MusicPlayer
{
public partial class Form1 : Form
{
SoundPlayer player = new SoundPlayer();
List<Button> btns = new List<Button>();
FlowLayoutPanel panel = new FlowLayoutPanel();
int cnt = 0;
string source = ".\\"; //사운드 경로
public Form1() { InitializeComponent(); }
private void Form1_Load(object sender, EventArgs e) {
panel.Size = new Size(500, 500); //버튼을 리스트형식으로 FlowLayout에 삽입
panel.Location = new Point(0, 25); //위치
panel.AutoScroll = true; //자동스크롤
Controls.Add(panel); //메인패널에 추가
refresh(); //새로고침
label1.Text = source;
}
private void button1_Click(object sender, EventArgs e)
{
refresh(); //새로고침 버튼
}
private void btn_Click(Object sender, EventArgs e)
{ //레이아웃에 추가될 버튼들의 이벤트핸들링함수
var button = (Button)sender; //버튼이름 구하기
try
{
player.SoundLocation = source + button.Text + ".wav";
player.Load();
player.Play();
} catch (Exception) { }
}
private void button2_Click(object sender, EventArgs e)
{ //중지버튼
player.Stop();
}
private void refresh()
{ //새로고침함수
string[] files = Directory.GetFiles(source);
panel.Controls.Clear();
btns.Clear();
cnt = 0;
foreach (string file in files) //wav파일 필터링
if (file[file.Length - 4] == '.' && file[file.Length - 3] == 'w' && file[file.Length - 2] == 'a' && file[file.Length - 1] == 'v')
{
btns.Add(new Button());
btns[cnt].Text = file.Substring(source.Length, file.Length-source.Length-4);
btns[cnt].Click += new EventHandler(btn_Click);
btns[cnt].Size = new Size(500, 80);
btns[cnt].BackColor = Color.Black;
btns[cnt].ForeColor = Color.White;
btns[cnt].Font = new Font("Arial", 10, FontStyle.Bold, GraphicsUnit.Point);
panel.Controls.Add(btns[cnt]); //FlowLayoutPanel에 버튼추가
cnt += 1;
}
}
private void button3_Click(object sender, EventArgs e)
{ //경로설정 버튼
folderBrowserDialog1.RootFolder = Environment.SpecialFolder.Desktop;
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
label1.Text = folderBrowserDialog1.SelectedPath;
source = label1.Text + "\\";
refresh();
}
}
}
}
[[[ 시연영상 ]]]
zzzzzzzzzzzzzzzㅋㅋㅋㅋㅋㅋㅋㅋㅋ
아닠ㅋㅋㅋㅋㅋㅋㅋ...풉ㅋㅋㅋㅋㅋ
흠....
노래 죄송합니다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
노래가사나오자마자 자괴감들어서 바로 중지눌러버리기~~
궁금한 부분있으면 댓글로 질문주세요.
감사합니다~
'🪞.Net Framework > C# Winform' 카테고리의 다른 글
런타임 컴파일러 만들기 기초 (exe로 exe만들기) (0) | 2021.01.05 |
---|---|
멀티 클라이언트 채팅서버 - C# winform (2) | 2020.12.06 |
댓글