Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.63/48: Рейтинг темы: голосов - 48, средняя оценка - 4.63
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
1

Отображение цвета по введённому значению в ARGB

22.10.2014, 19:45. Показов 9355. Ответов 48
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Хочу сделать так как на картике ввожу впервый richTextBox1 цвет к примеру ff82B326 жму на button и в richTextBox2 или не знаю в каком лучше элементе выводится цвет, а также добавить палитру цветов выбираешь нужный жмешь "ОК" и в richTextBox1 выводить значение RGB тот же к примеру ff82B326 .
Отображение цвета по введённому значению в ARGB
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.10.2014, 19:45
Ответы с готовыми решениями:

Как задаются цвета в Argb
Столкнулся с графикой, подскажите как задаются цвета в Format32bppArgb? Color.Red;...

Имя цвета зная ARGB
как узнать имя цвета зная ARGB??? Color colors = Color.Red; //colors = "{Name=Red, ARGB=(255, 255,...

Как узнать 32-разрядное значение ARGB цвета
System.Drawing.Color mycolor = System.Drawing.Color.FromName("Green"); Как потом узнать...

Поиск в БД по введенному значению
Делаю курсовой на тему Контрольно-Пропускной пункт, никак не могу разобраться как работать с БД...

48
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
27.10.2014, 17:05  [ТС] 41
Author24 — интернет-сервис помощи студентам
Добавлено через 1 минуту
Metall_Version, я толком сам не понял куда выводить вот описание выбирается цвет, потом значение HEX изменяется в реестре на выбранный цвет.

Добавлено через 8 минут
Цитата Сообщение от Metall_Version Посмотреть сообщение
я так и не понял , что должно выводится в текст бокс, например цвет черный
цвет HEX из картинки палитры.
0
2151 / 1288 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
27.10.2014, 17:14 42
Цитата Сообщение от ivan r Посмотреть сообщение
HEX
это 16-ричное представление числа.
там как раз оно и выводится.
а hex код цвета это число 16- ричное , где старший байт(пара знаков) является значением альфа-компонента.
потом 3-й бит это состовляющая красного цвета, 2- зеленый, 1- синий
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
27.10.2014, 17:20  [ТС] 43
Metall_Version, я вики тоже читал.
0
2151 / 1288 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
27.10.2014, 17:28 44
мне для такого читать вику не нужно...

Цитата Сообщение от ivan r Посмотреть сообщение
цвет HEX из картинки палитры.
а там что выводится ?
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
27.10.2014, 17:34  [ТС] 45
Цитата Сообщение от Metall_Version Посмотреть сообщение
а там что выводится ?
к примеру 85 107 47 или можно не выводить, а както сразу передать в реестр, но я этого не понял.
0
2151 / 1288 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
27.10.2014, 18:28 46
в десятичном виде представить... тю так бы и сказал. еле выдавишь что требуется сделать.

Добавлено через 12 минут
ivan r, вот
заменяется просто на это
C#
1
2
string.Format("R : {0}; G: {1}; B: {2}",
                        color.R, color.G, color.B);

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
                     private void Form1_Load(object sender, EventArgs e)
        {
            int i=0, j=0;
            int width = (panel1.Size.Width / BoxSize)-2;
            foreach (KnownColor color in (KnownColor[]) Enum.GetValues(typeof (KnownColor)))
            {
                var pb = new PictureBox()
                {
                    Size = new Size(BoxSize, BoxSize),
                    Location = new Point((BoxSize * j), (BoxSize * i)),
                    BackColor = Color.FromKnownColor(color)
                };
 
                pb.MouseClick += (o, args) =>
                {
                    var pict = o as PictureBox;
                    if(pict==null) return;
                    textBoxA.Text = string.Format("R : {0}; G: {1}; B: {2}",
                        pict.BackColor.R, pict.BackColor.G, pict.BackColor.B);
                    pictureBox1.BackColor = pict.BackColor;
                };
                panel1.Controls.Add(pb);
 
                if (j >= width)
                {
                    j = 0;
                    i++;
                }
                else
                    j++;
            }
        }
 
        private void pictureBox2_MouseClick(object sender, MouseEventArgs e)
        {
            var bitmap = new Bitmap(pictureBox2.Image);
            var color = bitmap.GetPixel(e.X, e.Y);
            pictureBox1.BackColor = color;
            textBoxA.Text = string.Format("R : {0}; G: {1}; B: {2}",
                        color.R, color.G, color.B);
        }
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
27.10.2014, 18:59  [ТС] 47
Metall_Version, да всё работает вот только сделал так
C#
1
2
3
4
5
6
7
8
 private void pictureBox2_MouseClick(object sender, MouseEventArgs e)
        {
            var bitmap = new Bitmap(pictureBox2.Image);
            var color = bitmap.GetPixel(e.X, e.Y);
            pictureBox1.BackColor = color;
            textBox1.Text = color.ToKnownColor().ToString("X");
            textBox2.Text = string.Format("{0} {1} {2}",
                         color.R, color.G, color.B);
Попробуй,
C#
1
textBox1.Text = color.ToKnownColor().ToString("X");
не выводит то что надо.
C#
1
2
 textBox2.Text = string.Format("{0} {1} {2}",
                         color.R, color.G, color.B);
работает норм.
0
2151 / 1288 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
27.10.2014, 19:02 48
Цитата Сообщение от ivan r Посмотреть сообщение
не выводит то что надо.
это hex выводит.

а в текст бокс у тебя выводит тотже код только в десятиричном представлении
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
27.10.2014, 19:22  [ТС] 49
Цитата Сообщение от Metall_Version Посмотреть сообщение
это hex выводит.
ах откопировал а просмотреть вывод забыл
Вот исправил теперь норм всё
C#
1
2
3
textBox1.Text = color.ToArgb().ToString("X");
textBox2.Text = string.Format("{0} {1} {2}",
color.R, color.G, color.B);
Добавлено через 3 минуты
Теперь с определение при вводе в textBox2 HEX значений ввожу что бы также
C#
1
pictureBox1.BackColor = Color.FromArgb(Convert.ToInt32(textBox1.Text, 16));
цвет выводила.
0
27.10.2014, 19:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.10.2014, 19:22
Помогаю со студенческими работами здесь

По введенному с клавиатуры значению X вычислить S
По введенному с клавиатуры значению X вычислить S: ...

Определить предпочтения пола по введенному значению
program z1; var a: char; begin write ('введите ваш пол "м-мальчик","д-девочка"'); readln (a);...

Запрос по значению, введенному в Edit.‎
Имеется база данных, нужно сделать запрос по значению введенному в эдит, то есть: имеется некий...

Sql-запрос по значению, введенному в Edit
Добрый день всем! Помогите пожалуйста с запросом. Работаю с Delphi7, база данных Access,...


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

Или воспользуйтесь поиском по форуму:
49
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru