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

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

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

Студворк — интернет-сервис помощи студентам
Хочу сделать так как на картике ввожу впервый richTextBox1 цвет к примеру ff82B326 жму на button и в richTextBox2 или не знаю в каком лучше элементе выводится цвет, а также добавить палитру цветов выбираешь нужный жмешь "ОК" и в richTextBox1 выводить значение RGB тот же к примеру ff82B326 .
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.10.2014, 19:45
Ответы с готовыми решениями:

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

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

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

48
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
22.10.2014, 20:07
Цитата Сообщение от ivan r Посмотреть сообщение
или не знаю в каком лучше элементе выводится цвет
pictureBox
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
22.10.2014, 20:19  [ТС]
Цитата Сообщение от Metall_Version Посмотреть сообщение
pictureBox
пробовал вывод цвета сделать c
C#
1
2
ColorDialog1.ShowDialog();
this.pictureBox1 = Color.Red;
но ошибка. неявное преобразование типа.
0
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
22.10.2014, 20:31
C#
1
pictureBox1.BackColor=Color.Red;
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
22.10.2014, 20:52  [ТС]
Цитата Сообщение от Metall_Version Посмотреть сообщение
pictureBox1.BackColor=Color.Red;
хотя так лучше спасибо)
Цитата Сообщение от ivan r Посмотреть сообщение
ввожу впервый richTextBox1 цвет к примеру ff82B326 жму на button
А с этим что делать? ввожу впервый richTextBox1 цвет к примеру ff82B326 жму на button и pictureBox выводится цвет, а также добавить палитру цветов выбираешь нужный жмешь "ОК" и в richTextBox1 выводить значение RGB тот же к примеру ff82B326 .
0
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
22.10.2014, 21:05
Цитата Сообщение от ivan r Посмотреть сообщение
А с этим что делать? ввожу впервый richTextBox1 цвет к примеру ff82B326 жму на button и pictureBox выводится цвет, а также добавить палитру цветов выбираешь нужный жмешь "ОК" и в richTextBox1 выводить значение RGB тот же к примеру ff82B326 .
есть метод готовый http://msdn.microsoft.com/ru-r... .110).aspx
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
22.10.2014, 21:16  [ТС]
C#
1
2
3
Color myArgbColor = new Color();
    myArgbColor = Color.FromArgb(255, 0, 255, 0);
    return myArgbColor;
не понял как реализовать
0
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
22.10.2014, 21:36
ivan r,
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
        private void button1_Click(object sender, EventArgs e)
        {
            int a=0, r=0, g =0, b = 0;
            try
            {
                a = Convert.ToInt32(textBoxA.Text, 16);
                r = Convert.ToInt32(textBoxR.Text, 16);
                g = Convert.ToInt32(textBoxG.Text, 16);
                b = Convert.ToInt32(textBoxB.Text, 16);
                
                pictureBox1.BackColor = Color.FromArgb(a, r, g, b);
            }
            catch
            {
                MessageBox.Show("Неверный формат данных");
            }
            
        }
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
22.10.2014, 22:03  [ТС]
Metall_Version не работает код...
0
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
22.10.2014, 22:05
ну наверное у вас нету текст боксов с таким именем, . тут же нетупо скопировал вставил ,
0
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
22.10.2014, 22:06
вота
Вложения
Тип файла: rar WindowsFormsApplication12.rar (49.8 Кб, 29 просмотров)
0
 Аватар для ViterAlex
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
23.10.2014, 01:07
Одно текстовое поле. Вводишь в него текст. Не более 8-ми символов. Преобразуешь в число. Это число передаёшь в Color.FromArgb. На компоненты разбивать совсем не обязательно
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
23.10.2014, 14:17  [ТС]
Цитата Сообщение от Metall_Version Посмотреть сообщение
тут же нетупо скопировал вставил
Это да и он вообше цвет не отображает...

Добавлено через 1 минуту
Цитата Сообщение от ViterAlex Посмотреть сообщение
Вводишь в него текст. Не более 8-ми символов. Преобразуешь в число. Это число передаёшь в Color.FromArgb.
вот цвет к примеру ff92C92B и как с одим полем реализовать?
0
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
23.10.2014, 14:29
Цитата Сообщение от ivan r Посмотреть сообщение
Это да и он вообше цвет не отображает...
у меня отображает, посмотри в моем проекте
0
 Аватар для ViterAlex
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
23.10.2014, 14:31
Цитата Сообщение от ivan r Посмотреть сообщение
цвет к примеру ff92C92B и как с одим полем реализовать?
C#
1
pictureBox1.BackColor = Color.FromArgb(Convert.ToInt32("ff92C92B", 16));
0
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
23.10.2014, 14:33
тот же проект , только заменить на этот метод, оставить только один текст бокс textBoxA
C#
1
2
3
4
5
6
7
8
9
10
11
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                pictureBox1.BackColor = Color.FromArgb(Convert.ToInt32(textBoxA.Text, 16));
            }
            catch
            {
                MessageBox.Show("Неверный формат данных");
            }
        }
1
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
23.10.2014, 14:35  [ТС]
нужно сделать аналог этой программы
Color_convert.7z
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
23.10.2014, 14:42  [ТС]
Metall_Version , ViterAlex Да так работает спасибо. И вторая часть вопроса а также добавить палитру цветов выбираешь нужный жмешь "ОК" и в TextBox1 выводится значение RGB тот же к примеру ff82B326 .
0
 Аватар для Metall_Version
2152 / 1289 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
23.10.2014, 15:48
Цитата Сообщение от ivan r Посмотреть сообщение
И вторая часть вопроса а также добавить палитру цветов выбираешь нужный жмешь "ОК" и
динамически создавать picturebox на панели например, каждой задавать какойто определенный цвет. а по клику на нее вытягивать из нее определение ее цвета

Добавлено через 31 минуту
щас накидаю пример

Добавлено через 26 минут
вот в том же проекте, еще создать панель и все будет

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
42
43
44
45
46
47
48
49
50
private const int BoxSize = 40;
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                pictureBox1.BackColor = Color.FromArgb(Convert.ToInt32(textBoxA.Text, 16));
            }
            catch
            {
                MessageBox.Show("Неверный формат данных");
            }
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            int i=0, j=0;
            int width = (panel1.Size.Width / BoxSize);
            foreach (KnownColor color in (KnownColor[]) Enum.GetValues(typeof (KnownColor)))
            {
 
 
                var pb = new PictureBox()
                {
                    Size = new Size(BoxSize, BoxSize),
                    Location = new Point((BoxSize * i), (BoxSize * j)),
                    BackColor = Color.FromKnownColor(color)
                };
                pb.MouseClick += (o, args) =>
                {
                    var pict = o as PictureBox;
                    if(pict==null) return;
                    textBoxA.Text = pict.BackColor.ToArgb().ToString("X");
                    pictureBox1.BackColor = pict.BackColor;
                };
                panel1.Controls.Add(pb);
 
                if (j >= width)
                {
                    j = 0;
                    i++;
                }
                else
                    j++;
            }
        }
ivan r,

немного подправил метод
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
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 = pict.BackColor.ToArgb().ToString("X");
                    pictureBox1.BackColor = pict.BackColor;
                };
                panel1.Controls.Add(pb);
 
                if (j >= width)
                {
                    j = 0;
                    i++;
                }
                else
                    j++;
            }
        }
0
33 / 33 / 12
Регистрация: 18.10.2014
Сообщений: 339
23.10.2014, 15:55  [ТС]
Metall_Version BoxSize не сушествует в контексте. Это еще что такое?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.10.2014, 15:55
Помогаю со студенческими работами здесь

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

По введенному с клавиатуры значению X вычислить S
По введенному с клавиатуры значению X вычислить S: S=((x-2)(x-4)(x-8)...(x-128))/((x-1)(x-3)(x-7)....(x-127)) В трех циклах 1.for ...

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

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

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru