분류 전체보기
-
mp3 파일 id3v2 태그 분석C#/WPF 2017. 3. 10. 16:07
음악플레이어를 만드는데, 파일명보다는 "artist - title명" 이런식으로 표현하고 싶었다. 그래서 mp3파일의 태그가 어떠한 구조로 되어있는지 찾아보았다. ID3 라는 태그인데, 최근에는 v2를 보통 쓴다. (version 2) 링크 그래서 붙여서 ID3v2로 쓴다. 이 태그를 통해 해당 mp3곡의 가수, 곡명, 앨범명, 저작권자, 트렉번호, 앨범아트 등을 알 수 있다. taglib를 쓰는 것을 강력히 추천한다. 저처럼 그냥 분석하고 쪼개보는 것을 좋아하는 사람만 해보시길... taglib 사용법 visual studio 2015 wpf 기준 상단메뉴 도구 -> NuGet 패키지 관리자 -> 솔루션용 NuGet 패키지 관리 -> 찾아보기 -> "taglib" -> 프로젝트 선택 -> 설치 TagL..
-
WPF MediaPlayer Volume 사용C#/WPF 2017. 3. 10. 15:42
MediaPlayer 를 사용하면서 volume 값을 저장하고, 프로그램이 켜질때 다시 적용시키는 방법을 하고있었다. 그런데 volume값이 1 이 되면 (0 ~ 1) 불러올때 적용이 안되더라. 그래서 찾아보고 찾아보니 Volume값이 1 을 가리키면 bool 값의 1 처럼 "소리가 난다." 를 뜻한다.그래서 실질적인 Max Volume 값은 0.99 이다. 따로 사용하는 AIMP 라는 음악플레이어 에서도 볼륨 99%는 존재하지 않는다. 97, 98과 100이 존재할 뿐... 0.99를 100으로 표시하고 사용하는 것이였다. 결국에 알아내긴 했지만, 혹시 나같은 사람이 있을까 글을 적는다. MediaPlayer 로 음악파일을 재생하면 매번 재생할때마다 Volume이 0.5로 설정된다. 그래서 따로 사용자..
-
WPF Rolling Animation (슬롯머신 같은 애니메이션)C#/WPF 2017. 2. 17. 10:30
텔레비전이나 여타 다른 곳들을 보면 숫자들이 돌아가면서 바뀌는 장면이 있습니다. WPF의 DoubleAnimation 을 통해 만들어 간단하게 만들어 보겠습니다. 메인 글자가 보이는 Label이 필요합니다. 1234567891011 Colored by Color Scriptercs 위와 같이 TranslateTransform 을 만들어주시고 Name을 설정해 주셔야 편하게 하실 수 있습니다. 기타 설정들은 여러분 편하신대로 하시면 됩니다. Animation 함수입니다. 12345678910111213141516171819202122232425262728void Animation(object sender, EventArgs e){ if (isDa1Up == true) { da1.From = 0; da1.T..
-
WPF 라디오 버튼 enum 바인딩(RadoButton Binding enum)C#/WPF 2017. 1. 24. 10:37
WPF 에서 radio 버튼을 사용할 때, 두가지가 아닌 여러가지를 사용하여 enum 형을 관리할 때 각 버튼마다 이벤트를 추가하고, 관리하기가 너무 길어집니다.' 바인딩을 사용하면 편해지는데요, 방법을 알아보겠습니다. 저는 Effect 라는 enum 을 사용하겠습니다. 123456public enum Effect{ None, Shadow, Outline}cs 아래는 Effect 형 변수와 속성입니다. 1234567891011121314public event PropertyChangedEventHandler PropertyChanged; Effect _effects; public Effect Effects{ get { return _effects; } set { _effects = value; if (P..
-
WPF 윤곽선 텍스트(Outlined Text)C#/WPF 2017. 1. 23. 11:00
wpf의 텍스트에 word art처럼 윤곽선 효과를 넣어야 하는데 아무리 찾아보고 찾아봐도 간단한 방법은 없었다. msdn에 예제가 있기는 하지만 상세한 코드들이 다 나와 있지는 않았었고, (링크)stackoverflow에는 아예 사용자 지정 컨트롤을 만들어 주어서 따로 추가한 뒤local 컨트롤을 통해 텍스트를 설정해 주어야 했다. (링크) 하지만 내가 원하는건 껐다 켰다 할 수 있는 윤곽선을 원했기에 최대한 다른 방법을 찾아 보았다. msdn에 예제가 있는 것을 발견했다. (링크) 하지만 이 예제에 있는 방법으로는 껐다 켰다 가 되기는 했지만 위의 사용자 지정 컨트롤과 다를 바 가 별로 없어 보였다.그리고 글이 무조건 left, top 정렬이 되어서 center 정렬이 되지 않았었다. 포기하려던 찰나..
-
WPF 메시지 박스 띄우기(경고창 띄우기)C#/WPF 2017. 1. 16. 16:04
프로그램을 만들다 보면 간단한 메시지를 띄워야 할 때가 있습니다. 윈도우에서는 메시지박스를 띄워주는 방법이 있는데요. 간단하게 띄울 수가 있습니다. 1. MessageBox 라는 클래스의 Show 함수를 사용하면 됩니다. 1MessageBox.Show("보여줄 메시지 입니다.");cs 가장 기본적인 형태는 위와 같습니다. 2. 그 다음에는 제목을 추가할 수 있으며, 간단한 버튼, 간단한 이미지를 넣을 수 있습니다. 1MessageBox.Show("보여줄 메시지 입니다.", "제목 표시줄");cs 3. 간단한 버튼들을 추가할 수 있습니다.OK : 확인OKCancel : 확인 취소YesNo : 예 아니오YesNoCancel : 예 아니오 취소 또한 이 버튼을 누른 결과들을 MessageBoxResult 를 ..
-
WPF 글씨에 그림자 효과 (Shadow Text)C#/WPF 2017. 1. 13. 13:55
폰트에는 따로 그림자를 넣어주는 효과가 없습니다. 그림자는 Label과 같은 컨트롤에 Effect를 통해서 넣어주어야 합니다. (해당 그림자 효과는 Lable, TextBox, TextBlock 등 여러 곳에 사용이 가능합니다. Label로 예를 들어 설명하겠습니다.) DropShadowEffect 라는 클래스를 통해서 해주면 됩니다. (System.Windows.Media.Effects.DropShadowEffect) 이 클래스의 속성들을 통해 그림자를 설정해준 뒤 Label에 적용시켜 주시면 됩니다. 12System.Windows.Media.Effects.DropShadowEffect shadow = new System.Windows.Media.Effects.DropShadowEffect();lbl...
-
블로그에서 코드 정리해서 보이기(Color Scripter)Etc. 2017. 1. 3. 00:30
블로그에 코드를 쓰면 너무 밋밋하고, 알아보기가 힘들게 됩니다. 그래서 알아보기 쉽게 쓸 방법을 찾다 좋은 사이트를 발견했습니다. Color Scripter 이 사이트인데요. 해당 사이트를 들어가면 알아보기 쉽게 되어있습니다. 처음 들어가면 위와 같이 되어있습니다. 1. 언어를 선택하시면 해당 언어에 맞춰져 있는 프리셋대로 색상이 적용됩니다. 2. 스타일패키지는 테마를 정하는 것이라 보시면 됩니다.3. 클립보드에 복사를 하신 뒤 붙여넣으실 곳에 Ctrl + V 를 하시면 됩니다. 티스토리 글쓰기 에서는 HTML이 적용되어 붙여넣어지므로 그대로 붙여넣으시면 됩니다. 예. 원 코드private void ToastMessage(string message){lblToast.Content = message; Do..