2016-08-24 3 views
1

0에서 9까지의 각 숫자에 대해 색상을 설정하고 싶습니다. 흰색에서 검은 색 흰색은 0이고 검은 색은 9이므로 중간에 파란색 = 2, 녹색 = 1이됩니다. , 빨간색 = 4. 그래서 사용자가 숫자 2144214를 입력하면 새 색상을 계산하고 만들 수 있습니다. 2xgreen, 2xblue 및 3xred와 같은 것이 2 + 2 + 1 + 1 + 4 + 4 + 4이며 결과는 새로운 색상이됩니다. 그건 생각이지만, 저를 죽이는 부분은 색상 값을 변수로 설정하는 것입니다, 가능합니까? WPF C# 앱에서 일하고 있습니다.색상을 int 변수로 설정

+0

Color.FromArgb() –

+0

WPF의 모든 색상은 html 문자열로 표현할 수 있습니다. #TTRRGGBB 여기서 TT는 투명도이고 RR, GG, BB는 빨강, 녹색 및 파랑이므로이 ​​색상으로 모든 색상을 만들 수 있습니다. 코드 줄 : Color color = (Color) ColorConverter.ConvertFromString ("# FFDFD991"); 그것은 스택 오버플로에 대한 답변입니다 http://stackoverflow.com/questions/2109756/how-to-get-color-from-hexadecimal-color-code-using-net –

+0

그리고 난 빨강, 파랑 및 파랑을 초기화해야 할 것입니다 녹색, 그래서 나중에 응용 프로그램에서 각 색상의 수를 계산할 수 있습니까? – AlexDev

답변

0

을, 당신이 별도로, 빨강, 녹색, 파랑 저장할 필요가 있다고 생각하고, 증가/감소 그 숫자는 입력 된 숫자에 따라 달라집니다. 그것은 0으로 적색, 녹색, 청색을 초기화해야합니다, 당신의 색깔을 구축 한 후, 유효성을 확인해야합니다, 물론이

// get a digit 

switch (digit) { 
    case 0: // black, darken the color 
     red -= 4; // value of 4 is arbitrary, it could be 1 or other 
     green -= 4; 
     blue -= 4; 
     break; 
    case 1: // red 
     red += 4; 
     break; 
    case 2: // green 
     green += 4; 
     break; 
    case 3: // blue 
     blue+= 4; 
     break; 
    case 4: // cyan 
     green += 4; 
     blue += 4; 
     break; 
    case 5: // yellow 
     red += 4; 
     green += 4; 
     break; 
    case 6: // magenta 
     red += 4; 
     blue += 4; 
     break; 
    case 7: // white, lighten everything 
     red += 4; 
     green += 4; 
     blue += 4; 
     break; 
    default: 
     break; 
} 

처럼 뭔가를 갈 수있다 (많은 컬러 시스템이 가지고 각 색상별로 255 개). 이 모든 작업이 끝나면 빨강, 초록, 파랑을 가지게되고 Color.FromArgb()와 함께 @EdPlunkett이 위에 제시 한대로 갈 수 있습니다.

+0

그래서 내가 검정색 = 케이스 0에서 흰색 = 케이스 9까지 다른 색상에 대해 9 가지 경우를 만들어야한다고 제안합니다. – AlexDev

+0

답장이 늦어서 죄송합니다. 그것이 위 코드의 표류입니다. 물론 여러 가지 방법이 있지만 RGB 또는 HSL로 색상을 선택하는 방법이 있습니다. 나는 네가 원했던 것을 정확히 알지 못했지만, 물 한 접시를 먹은 것처럼 들렸으며, 입력 문자열에 따라 빨강, 초록, 파랑 ​​등의 식용 색소를 더 추가하고 싶었다. –

+0

잘 이해하려고 노력할 것입니다. 사용자가 "year year income"을 입력하는 것과 같은 정보, OFC, 숫자를 입력하는 앱을 만들고 싶습니다. 사용자가 321444를 입력하면 앱이 색상을 만듭니다. 0에서 9까지 10 가지 색상을 만들 수 있다고 생각했으나 그 동안에는 빨강 녹색 및 파랑 색상을 사용하는 것이 훨씬 더 쉽습니다. 하지만 지금 내 문제는 어떻게 번호를 요약합니까? – AlexDev

관련 문제