007wan |
Отправлено: 27 Апреля, 2019 - 12:06:58
|
Эксперт
Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017
Репутация: -2
|
Как создать функцию, которая будет задавать цвет в textbkcolor?
Типа этого:
CODE:
//наброски
textbkcolor (Color("Red", "Black"));
function Color(string text, string background)
{
if (text == "Red" | background == "Black")
return(255,16711808);
}
или типа этого
CODE:
//Наброски
SetBkColor(Red,Black);
function SetBkColor(string text, string back)
{
//тоже самое
}
Или проще код и получше, если можно с масивами или как-то лучше, на свое усмотрение.
Мне это нужно не для того, что я ленивый не могу вместо textbkcolor (4227327,16711808);
написать цифры, а что бы не лезть в интернет за цветами, а сразу ввести буквенно как в RGB. Я помню одну программу, где не нужно было искать цвет, а сразу вводишь Black Yellow или White и сразу дает то, что нужно. ИЛИ же как идея для Kiborа: когда создаешь функцию textbkcolor (*,*), где * при клике открывается что-то всплывающего окна с красками и тонами, как в паинте при смене цвета и при подтверждении он закрывает окно и задает выбранный цвет.
(Добавление)
В цифрах |
|
|
Zireael |
Отправлено: 27 Апреля, 2019 - 12:38:31
|
Эксперт
Покинул форум
Сообщений всего: 4467
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: Как создать функцию, которая будет задавать цвет в textbkcolor?
CODE:loop()
{
Color("Red", "Green");
textout(0, 300, 300, "text1", 1);
Color("Yellow", "Black");
textout(1, 300, 320, "text2", 1);
sleep(100);
}
function Color(string text, string background)
{
string color1[4]={"Red", "Black", "Green", "Yellow"}
int color2[4]={255, 0, 65280, 65279}
for(int i=0; i<sizearray(color1); i++){if(text == color1[i])break;}
for(int j=0; j<sizearray(color1); j++){if(background == color1[j])break;}
textbkcolor(color2[i], color2[j]);
} |
|
|
Zireael |
Отправлено: 30 Апреля, 2019 - 14:46:30
|
Эксперт
Покинул форум
Сообщений всего: 4467
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: открывается что-то всплывающего окна с красками и тонами, как в паинте
CODE:#define CC_RGBINIT 1
#define CC_FULLOPEN 2
external(INT, "ChooseColor", "ChooseColorA", "Comdlg32.dll");
int color[16];
for(int i=0; i<sizearray(color); i++)color[i]=16777215;
color[0]=0;
int c[9]={36, 0, 0, 255, address(#color[0]), CC_RGBINIT | CC_FULLOPEN, 0, 0, 0}
messagebox("Добавить в набор 2 цвета");
if(ChooseColor(address(#c[0])))
{
messagebox("Цвет1: "+format(color[0])+formatic(13)+formatic(10)+"Цвет2: "+format(color[8]));
textbkcolor(color[0], color[8]);
loop()
{
textout(0, 300, 300, "Ctrl+Shift+Z чтобы остановить скрипт", 1);
sleep(100);
}
}
else messagebox("Нажата отмена или окно было закрыто"); |
|
|
Dantes3000 |
Отправлено: 04 Мая, 2019 - 12:35:25
|
Эксперт
Покинул форум
Сообщений всего: 1489
Дата рег-ции: Июнь 2016
Репутация: 58
|
007wan пишет: //наброски
CODE:textbkcolor (Color("Red", "Black"));
function Color(string text, string background)
{
if (text == "Red" | background == "Black")
return(255,16711808);
}
CODE:#define Красный 255
#define Черный 0
textbkcolor (Красный, Черный);
textout(0,0,0, "fdfdf", 2); pause(2000); |
|
|
|