|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.03.2012, 22:16 | #1 |
Новичок
Джуниор
Регистрация: 29.03.2012
Сообщений: 1
|
Просмотр цветов
Вот такая задача:
Форма содержит компонент-счетчик NumericUp-Down с заголовком-меткой «Номер цвета» и панель GroupBox с меткой Label. При вводе в компонент NumericUpDown номера одного из стандартных цве-тов, входящих в перечисление KnownColor, панель GroupBox закрашивается этим цветом, а название этого цвета выводится в заголовке этой панели ин-версным цветом. В начале работы в панели отобра-жается черный цвет (Black); диапазон допустимых значений компонента NumericUpDown должен соот-ветствовать диапазону всех стандартных цветов пере-числения KnownColor: от AliceBlue до YellowGreen. Меню формы содержит одно подменю «Commands» с командами «Color...» и «Exit». Команда «Color...» приводит к появлению диалогового окна ColorDialog, позволяющего выбрать цвет для фона панели Group-Box. Если выбранный цвет является одним из стан-дартных цветов, то в компоненте NumericUpDown появляется его номер, если выбранный цвет не явля-ется стандартным цветом, то об этом выводится со-общение в информационном окне (с помощью функ-ции MessageBox.Show), и фон панели не изменяется. Не могу связать компонент-счётчик с цветами |
01.04.2012, 20:15 | #2 |
Форумчанин
Регистрация: 09.06.2011
Сообщений: 147
|
Если я правильно понял вопрос, то все очень просто!
Сначала делаем: List<string> myKnownColors = new List<string>(); foreach (var color in Enum.GetNames(typeof(KnownColor))) myKnownColors.Add(color.ToString()) ; таким образом мы загрузим названия всех цветов с перечисления KnownColor, и сохраним их в наш лист, основанный на string'e. Далее, когда пользователь вводит число (номер knownColor'a), мы просто выдергиваем нужное нам название цвета с нашего листа (в листе напомню находится список всех knowColor'ов). Пример: string knownColorName = myKnownColors[Convert.ToInt32(textBox1.Text)]; (в этом примере берется текст с TextBox'a, в твоем случаи, будет твой контрол) далее получаем цвет для закраски чего либо: Color c = Color.FromName(knownColorName); для самоуверенности, делаем проверку - MessageBox.Show(с.IsKnownColor.ToSt ring()); если "с" - это элемент с перечисления knownColor, то мы увидим в сообщении текст TRUE. вроде ответил на вопрос)
У женщин чары образуются из стрингов;
А у программистов наоборот - стринги образуются из чаров; |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Реакция цветов | Dark Espeon | Помощь студентам | 0 | 18.03.2011 18:08 |
Перевод цветов | RIO | Общие вопросы Delphi | 10 | 11.11.2009 15:10 |
Сортировка цветов | Altera | Общие вопросы Delphi | 21 | 30.09.2009 17:55 |
Сравнивание цветов | Zeraim | Общие вопросы Delphi | 7 | 26.04.2008 12:49 |