nesco писал(а):
Lora, а что это у тебя за такая интересная програмулька, на которую ты скриншот привелаФотошоп обыкновенный!
Galkov писал(а):
НеправдаПредусмотрена
Согласна, я ошиблась! Просто я глазами пробежалась выискивая конвертер HEX --> DEC, а он коварно скрывался как HEX --> To Int!
Tad писал(а):
ошибка в переводе R,G,B в COLORREF — стандартный тип для представления цветов в Win32.COLORREF можно представить в шестнадцатеричном виде так: 0x00bbggrr (а не 0xrrggbb как у Вас на скриншоте ff0080)
Угу, понятно. Только вот я по прежнему считаю что весь этот огород с переводом шестнадцатеричного цвета в десятеричный мягко говоря необоснованно муторным. Меня мучает всё тот же вопрос: зачем?! Ведь компонент RGB замечательно выводит цвета ровно те что выбраны в палитре! Так зачем тогда все эти танцы с бубном???
Вот схемка, по-моему очень наглядно!
Add(Convertor,7075562,630,511)
{
Mode=5
link(onResult,2506174:doEvent1,[])
link(Data,9838625:FString,[(636,506)(590,506)(590,555)(545,555)])
}
Add(Edit,1347072,357,350)
{
Left=40
Top=60
Width=80
Text="0xFF0080"
link(onChange,3356868:doWork1,[(401,356)(401,395)(133,395)])
}
Add(Button,6174626,274,511)
{
Left=130
Top=60
Caption="-->"
link(onClick,6122319:doEnum,[])
}
Add(Label,5957326,752,543)
{
Left=195
Top=60
Width=80
Height=17
Caption=""
AutoSize=1
Alignment=2
}
Add(MainForm,9577859,175,91)
{
Width=516
Height=294
Color=16777215
Point(doColor)
link(onCreate,9731724:In,[])
}
Add(Hub,2506174,686,511)
{
link(onEvent1,3052024:doWork,[])
link(onEvent2,5957326:doText,[(724,524)(724,549)])
}
Add(Label,4249558,436,12)
{
Left=75
Top=30
Width=26
Height=17
Caption="HEX"
}
Add(Label,14610240,480,12)
{
Left=220
Top=30
Width=26
Height=17
Caption="DEC"
}
Add(FormatStr,9838625,539,511)
{
DataCount=3
Mask="%3%2%1"
Point(FString)
link(onFString,7075562:doConvert,[])
link(Str1,4988174:Value,[])
link(Str2,10345367:Value,[])
link(Str3,7293545:Value,[])
}
Add(Str_Enum,6122319,357,511)
{
Delimiter=""
Step=2
Point(onBreak)
link(onEnum,7591502:doEvent,[])
link(String,10005070:Var2,[])
}
Add(Memory,4988174,539,385)
{
}
Add(IndexToChanel,7591502,448,511)
{
Count=4
Point(Data)
Point(Index)
link(onEvent2,4988174:doValue,[(494,524)(494,391)])
link(onEvent3,10345367:doValue,[(510,531)(510,426)])
link(Data,6122319:Part,[(454,489)(423,489)(423,561)(370,561)])
link(Index,6122319:NumSubStr,[(461,499)(412,499)(412,555)(363,555)])
link(onEvent4,7293545:doValue,[(519,538)(519,461)])
}
Add(Memory,10345367,546,420)
{
}
Add(Memory,7293545,553,455)
{
link(onData,9838625:doString,[(594,461)(594,499)(527,499)(527,517)])
}
Add(Trim,1468010,252,420)
{
Char="0x"
Mode=4
link(onTrim,3167436:doWork2,[])
link(Text,7054313:Var1,[(258,411)])
}
Add(Trim,555686,294,455)
{
Char="#"
Mode=4
link(onTrim,3167436:doWork3,[(331,461)])
link(Text,7054313:Var2,[])
}
Add(HubEx,3167436,327,420)
{
Angle=3
link(onEvent,1347072:doText,[(331,356)])
}
Add(Hub,761406,210,420)
{
link(onEvent1,1468010:doTrim,[])
link(onEvent2,555686:doTrim,[(241,433)(241,461)])
}
Add(GetDataEx,10005070,357,406)
{
link(Data,1347072:Text,[])
}
Add(HubEx,3356868,129,420)
{
link(onEvent,4365956:doTimer,[])
}
Add(Timer,4365956,154,420)
{
Interval=125
Enable=1
AutoStop=1
link(onTimer,761406:doEvent1,[])
}
Add(LineBreak,9789189,84,420)
{
link(Out,3356868:doWork2,[])
Primary=[9731724,154,-315]
}
Add(Image,6984456,168,42)
{
Left=310
Top=50
Width=165
Height=155
Point(doColor)
}
Add(Label,14761800,523,12)
{
Left=365
Top=20
Width=69
Height=17
Caption="Выбран цвет"
}
Add(Button,832908,56,119)
{
Left=310
Top=220
Width=165
Caption="Применить к форме"
link(onClick,14792148:doData,[])
}
Add(LineBreakEx,3052024,749,511)
{
Caption="color"
}
Add(LineBreakEx,10547572,56,56)
{
Caption="color"
Type=1
link(OnEvent,7957028:doValue,[])
}
Add(DoData,14792148,119,119)
{
link(onEventData,9577859:doColor,[])
link(Data,7957028:Value,[])
}
Add(Memory,7957028,119,56)
{
link(onData,6984456:doColor,[])
}
Add(Label,12181686,393,12)
{
Left=80
Top=105
Width=33
Height=17
Caption="R G B"
}
Add(Edit,12026388,644,144)
{
Left=25
Top=125
Width=45
Text=""
}
Add(Edit,16272254,693,144)
{
Left=75
Top=125
Width=45
Text=""
}
Add(Edit,3127157,742,145)
{
Left=125
Top=125
Width=45
Text=""
}
Add(Button,9163705,588,217)
{
Left=180
Top=125
Caption="-->"
link(onClick,9780394:doRGB,[])
}
Add(RGB,9780394,686,217)
{
link(onRGB,6067201:doWork,[])
link(R,12026388:Text,[(692,198)(650,198)])
link(G,16272254:Text,[])
link(B,3127157:Text,[(706,197)(748,197)])
}
Add(LineBreakEx,6067201,749,217)
{
Caption="color"
}
Add(GetDataEx,7054313,294,406)
{
Angle=1
link(Data,10005070:Var1,[])
}
Add(Button,1726119,396,70)
{
Left=50
Top=180
Width=165
Height=50
Caption="Палитра (adobe.com)"
link(onClick,8811411:doShellExec,[(442,76)(442,83)])
}
Add(WinExec,8811411,455,70)
{
FileName="https://color.adobe.com/ru/create/color-wheel/?base=2&rule=Analogous&selected=3&name=%D0%9C%D0%BE%D1%8F%20%D1%82%D0%B5%D0%BC%D0%B0%20Color&mode=rgb&rgbvalues=0.3,0.26368478151540087,0.0676937812856906,0.33999999999999997,0.17697869772054486,0.07671961879044935,0.25,0.06891148440474218,0.19206000852619415,0.10079059135161386,0.07671961879044935,0.33999999999999997,0.08269378128569062,0.29062775018315296,0.3&swatchOrder=0,1,2,3,4"
}