Вверх ↑
Этот топик читают: Гость
Ответов: 1376
Рейтинг: 197
#301: 2010-10-22 22:20:41 ЛС | профиль | цитата
nesco, а вот проще...
code_21190.txt
------------ Дoбавленo в 22.20:
Вот и примерное применение...

Add(MouseEvent,8184259,399,98)
{
Point(Handle)
}
Add(MainForm,8177897,343,252)
{
Width=116
Height=31
Visible=1
BorderStyle=0
WindowsState=2
Icon=[ZIP7E03000078DA63606004420101062029C190C1CCC020C6C0C0A001C440210605068838083830338C022470E5C37F20224931915A90156345242946D342D00D58D5D3CE7C52FD3BA8C0FFFF08FC1D883F03F143203EC0CEC0D0C00CCE3C281824069283E9010090F6BF01]
link(onCreate,11064796:doHide,[(383,272)(383,265)])
}
Add(Timer,15868502,343,196)
{
Interval=10
link(onTimer,16537597:doData,[])
}
Add(FormatStr,7138711,448,308)
{
DataCount=9
Mask="Handle: %1
Caption: %2
Class Name: %3
Text: %4
Size: %5 х %6
Context: %7
Process ID: %8
Control ID: %9"
Point(FString)
link(onFString,11232037:doWork1,[(528,314)(528,399)(429,399)(429,363)])
link(Str1,1234535:Var2,[])
link(Str2,8425171:Caption,[])
link(Str4,14292406:Var1,[(475,293)(559,293)])
link(Str5,8425171:Width,[(482,282)(468,282)])
link(Str6,8425171:Height,[(489,271)(475,271)])
link(Str7,8425171:Context,[(496,264)(482,264)])
link(Str8,8425171:ProcessID,[(503,257)(489,257)])
link(Str9,8425171:ControlID,[(510,250)(496,250)])
}
Add(Replace,5176355,574,266)
{
SubStr="obj_"
link(onReplace,7138711:doString,[(617,272)(617,408)(422,408)(422,314)])
link(Str,8425171:ClassName,[(580,238)(454,238)])
}
Add(WinInfo,8425171,448,196)
{
Point(Width)
Point(Height)
Point(Context)
Point(ProcessID)
Point(ControlID)
link(onWinInfo,15511225:doEvent1,[])
link(Handle,13333246:Var2,[])
}
Add(ChangeMon,16537597,399,196)
{
link(onData,8425171:doWinInfo,[])
link(Data,11526898:Point,[])
}
Add(GetDataEx,13333246,448,175)
{
link(Data,8184259:Handle,[(454,139)(419,139)])
}
Add(PointXY,11526898,399,147)
{
link(X,8184259:MouseX,[])
link(Y,8184259:MouseY,[])
}
Add(Hub,15511225,511,196)
{
link(onEvent1,14292406:doWork1,[])
link(onEvent2,5176355:doReplace,[(538,209)(538,272)])
}
Add(MultiElement,14292406,553,196)
{
@Hint=#17:Извлечение текста|
link(Data1,13333246:Var3,[(559,180)])
AddHint(36,-36,113,13,@Hint)
}
BEGIN_SDK
Add(EditMulti,9897834,21,21)
{
WorkCount=1
DataCount=1
VarCount=1
Height=193
link(doWork1,16206345:doData,[(35,27)(35,97)])
link(Var1,10176720:Value,[(27,193)(272,193)])
}
Add(SendMessage,14145821,140,105)
{
Message=13
link(onSend,16305821:doGet,[(198,111)(198,153)])
link(Handle,9897834:Data1,[(146,63)(27,63)])
link(LParam,1164314:Memory,[(160,77)(258,77)(258,124)(237,124)])
}
Add(MemoryStream,1164314,217,84)
{
Point(Memory)
Point(doSize)
}
Add(DataToFile,16305821,217,140)
{
Type=6
link(onGet,10176720:doValue,[])
link(Stream,1164314:Stream,[])
}
Add(Hub,4610112,98,91)
{
OutCount=3
link(onEvent1,1164314:doClear,[])
link(onEvent2,1164314:doSize,[])
link(onEvent3,14145821:doSendMessage,[])
}
Add(DoData,16206345,49,91)
{
Data=Integer(256)
link(onEventData,4610112:doEvent1,[])
}
Add(Memory,10176720,266,140)
{
}
END_SDK
Add(TrayIcon,11064796,399,252)
{
link(onClick,8177897:doClose,[(437,258)(437,294)(331,294)(331,279)])
}
Add(GetDataEx,1234535,448,266)
{
link(Data,13333246:Var1,[(454,241)(445,241)(445,180)])
}
Add(StyleXP,10121472,399,56)
{
}
Add(MultiElement,11232037,441,357)
{
@Hint=#4:Хинт|
link(Data1,1234535:Var1,[(447,271)])
link(Data2,7138711:FString,[])
AddHint(-91,-24,39,13,@Hint)
}
BEGIN_SDK
Add(EditMulti,1698867,350,224)
{
WorkCount=1
DataCount=2
Width=258
Height=137
link(doWork1,7107976:doEvent1,[(378,230)(378,293)])
}
Add(BaloonToolTips,3681978,560,273)
{
Title="Информация об окне"
Icon=1
link(Handle,1698867:Data1,[(566,240)(356,240)])
link(Text,1698867:Data2,[(573,235)(363,235)])
}
Add(Hub,6504384,504,273)
{
link(onEvent1,3681978:doCreate,[])
link(onEvent2,3681978:doShow,[(529,286)(529,293)])
}
Add(Timer,13342912,455,273)
{
@Hint=#48:Задержка перед появлением подсказки (от мигания)|
Interval=500
Enable=1
AutoStop=1
Point(onStop)
link(onTimer,6504384:doEvent1,[])
link(onStop,743841:doTimer,[(495,286)(495,307)])
AddHint(-74,-28,167,26,@Hint)
}
Add(Hub,7107976,406,287)
{
OutCount=3
link(onEvent1,13342912:doStop,[(442,293)(442,286)])
link(onEvent2,743841:doStop,[(442,300)(442,314)])
link(onEvent3,13342912:doTimer,[(435,307)(435,279)])
}
Add(Timer,743841,504,301)
{
@Hint=#18:Чтоб ненадоедал...|13:Висит 10 сек.|
Interval=10000
Enable=1
AutoStop=1
Point(onStop)
link(onStop,3681978:doDestroy,[(546,314)(546,286)])
AddHint(-145,18,112,26,@Hint)
}
END_SDK


карма: 1

0
файлы: 1code_21190.txt [1.8KB] [649]
Разработчик
Ответов: 26061
Рейтинг: 2120
#302: 2010-10-22 22:25:33 ЛС | профиль | цитата
foksov писал(а):
а вот проще...

В хинте можно не использовать Handle формы, а выводить на главный контекст

code_21191.txt
карма: 22

1
файлы: 1code_21191.txt [1.7KB] [763]
Голосовали:foksov
Ответов: 1376
Рейтинг: 197
#303: 2010-10-22 22:33:35 ЛС | профиль | цитата
Даж ещё лучше, спасибо за науку!
------------ Дoбавленo в 22.33:
Вот и засунуть в Wiki это, чтоб не спрашивали про многострочный хинт... со всеми дополнительными пояснениями, о котрых ты сказал!
карма: 1

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#304: 2010-10-22 23:44:11 ЛС | профиль | цитата
foksov писал(а):
Вот и засунуть в Wiki

А тебе туда что, доступ закрыт Только StyleXP выкинуть надо из примера
карма: 22

0
Ответов: 1376
Рейтинг: 197
#305: 2010-10-22 23:45:27 ЛС | профиль | цитата
nesco, вопрос на засыпку, как к Разработчику!!! Как присвоить значёк курсора Экрану!
карма: 1

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#306: 2010-10-22 23:47:31 ЛС | профиль | цитата
foksov писал(а):
Как присвоить значёк курсора Экрану!

Не понял
карма: 22

0
Ответов: 1376
Рейтинг: 197
#307: 2010-10-22 23:54:42 ЛС | профиль | цитата
Блин, уточню...
Можно курсор своему окну присвоить, но нельзя всему Экрану, то бишь, Рабочему столу
карма: 1

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#308: 2010-10-23 00:06:33 ЛС | профиль | цитата
foksov писал(а):
Можно курсор своему окну присвоить, но нельзя всему Экрану, то бишь, Рабочему столу

У нас это не поддерживается, только контролу можно присвоить. Возможно, и Рабочему столу можно присвоить, но через WinAPI в IC, я не интересовался конкретно
карма: 22

0
Ответов: 1376
Рейтинг: 197
#309: 2010-10-23 00:37:10 ЛС | профиль | цитата
nesco писал(а):
У нас это не поддерживается, только контролу можно присвоить

Блин... Буду копать и пытать KOL, просто интересно, почему не позволительно Экрану присвоить мой курсор, Delphi позволял такое... Не в вину всем Нашим
карма: 1

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#310: 2010-10-23 00:57:20 ЛС | профиль | цитата
foksov писал(а):
Delphi позволял такое...

Ну и что
nesco писал(а):
Возможно, и Рабочему столу можно присвоить, но через WinAPI в IC

Просто, этим никто не занимался и не заморачивался на эту тему
карма: 22

0
Ответов: 3851
Рейтинг: 159
#311: 2010-11-23 21:56:42 ЛС | профиль | цитата

этот кусок схемы делался для ввода пользователем 2-значного числового значения часов с помощью цифровых клавиш, клавиш курсора (вверх, вниз) и скроллера мыши. модуль вводимого значения задаётся в design-time (по умолчанию), так для минут, его нужно будет установить в "60".

Add(ChildPanelEx,2914297,105,105){
}
BEGIN_SDK
Add(EditMultiEx,12729487,21,21)
{
WorkCount=#9:doSetData|
VarCount=#4:Data|
Width=713
Height=550
link(doSetData,13073517:doText,[(86,27)(86,300)])
link(Data,11272686:Var1,[(27,397)])
}
Add(Panel,11396133,105,203)
{
Left=35
Top=105
Width=20
Height=21
}
Add(Edit,13073517,140,294)
{
Width=20
Text="0"
Point(Position)
Point(onKeyUp)
Point(onMouseWheel)
Point(onSetFocus)
Point(doSelectAll)
link(onChange,10232030:doLength,[(182,300)(182,209)])
link(onKeyUp,15158444:doCase,[])
link(onMouseWheel,7995420:doCompare,[(184,321)(184,454)])
link(onSetFocus,10954594:doWork3,[(179,328)(179,344)(123,344)])
}
Add(Math,7024221,525,420)
{
OpType=8
Op2=24
ResultType=0
PColor(Op2,16776960)
link(onResult,9291879:doWork2,[])
link(Op2,5715638:Var3,[(538,131)])
}
Add(Math,13349253,336,420)
{
Op2=1
ResultType=0
link(onResult,14240018:doWork2,[])
link(Op1,14674825:Var2,[])
}
Add(Math,1327248,378,497)
{
OpType=1
Op2=1
ResultType=0
link(onResult,3003015:doWork3,[(487,503)])
link(Op1,14674825:Var3,[(384,397)])
}
Add(If_else,7995420,203,448)
{
Type=2
Op2=Integer(0)
link(onTrue,2952099:doWork2,[(269,454)(269,426)])
link(onFalse,11249761:doWork2,[])
}
Add(HubEx,3003015,483,420)
{
link(onEvent,7024221:doOperation,[])
}
Add(If_else,4878195,287,490)
{
link(onTrue,14832909:doData,[])
link(onFalse,1327248:doOperation,[])
link(Op1,440990:Var2,[])
link(Op2,11430538:Value,[])
}
Add(GetDataEx,440990,287,392)
{
Angle=3
link(Data,11272686:Var3,[])
}
Add(Memory,11430538,294,441)
{
Default=Integer(0)
}
Add(HubEx,9291879,574,420)
{
Angle=3
link(onEvent,14420834:doEvent1,[(578,148)(77,148)(77,307)])
}
Add(DoData,14832909,329,490)
{
Data=Integer(23)
link(onEventData,9291879:doWork3,[(578,496)])
}
Add(Case,12071822,259,308)
{
@Hint=#5:вверх|
Value=Integer(38)
link(onTrue,2952099:doWork1,[(326,321)])
}
Add(Case,15158444,203,308)
{
@Hint=#4:вниз|
Value=Integer(40)
link(onNextCase,12071822:doCase,[])
link(onTrue,11249761:doWork1,[(242,321)])
}
Add(HubEx,11249761,238,455)
{
link(onEvent,4878195:doCompare,[(269,461)(269,496)])
}
Add(HubEx,2952099,322,420)
{
link(onEvent,13349253:doOperation,[])
}
Add(Hub,14420834,91,301)
{
link(onEvent1,13073517:doText2,[])
link(onEvent2,10954594:doWork2,[])
}
Add(HubEx,10954594,119,308)
{
link(onEvent,13073517:doSelectAll,[])
}
Add(GetDataEx,14674825,336,392)
{
Angle=3
link(Data,440990:Var3,[])
}
Add(Length,10232030,196,203)
{
link(onLength,662822:doCompare,[])
link(Str,12793133:Var1,[(202,187)])
}
Add(If_else,662822,245,203)
{
Type=2
Op2=Integer(2)
link(onTrue,3429353:doWork2,[])
link(onFalse,3608649:doCompare,[])
}
Add(Delete,16080445,448,203)
{
Count=1
link(onDelete,3003015:doWork1,[(487,209)])
link(Str,15160450:Var3,[(454,187)])
}
Add(If_else,2601068,392,210)
{
Type=4
Op2=Integer(24)
PColor(Op2,16776960)
link(onTrue,3429353:doWork3,[(438,216)])
link(onFalse,14240018:doWork1,[(438,223)])
link(Op2,5715638:Var2,[])
}
Add(GetDataEx,15160450,350,182)
{
Angle=3
link(Data,12793133:Var3,[])
}
Add(Convertor,4471439,350,210)
{
Mode=1
link(onResult,2601068:doCompare,[])
link(Data,15160450:Var2,[])
}
Add(If_else,3608649,301,210)
{
Op2=Integer(2)
link(onTrue,4471439:doConvert,[])
}
Add(HubEx,3429353,434,203)
{
link(onEvent,16080445:doDelete,[])
}
Add(Memory,15864591,399,56)
{
Default=Integer(24)
MakeExt(Default,диапазон допустимых значений (от нуля),mod)
}
Add(GetDataEx,5715638,399,126)
{
PColor(Data,16776960)
link(Data,15864591:Value,[])
}
Add(GetDataEx,11272686,140,392)
{
link(Data,13073517:Text,[])
}
Add(HubEx,14240018,434,420)
{
link(onEvent,3003015:doWork2,[])
}
Add(InfoTip,16232794,168,385)
{
Info=#20:ввод скроллером мыши|
Font=[MS Sans Serif,8,1,8388608,1]
Frame=3
VAlign=2
Width=295
Height=172
Margin=10
}
Add(InfoTip,1881974,175,154)
{
Info=#22:ввод цифр с клавиатуры|
Font=[MS Sans Serif,8,1,32768,1]
Frame=3
Width=337
Height=95
Margin=10
}
Add(InfoTip,5075274,189,266)
{
Info=#31:перебор стрелками на клавиатуре|
Font=[MS Sans Serif,8,1,128,1]
Frame=3
Width=148
Height=88
Margin=10
}
Add(GetDataEx,12793133,336,182)
{
Angle=2
link(Data,14674825:Var1,[])
}
Add(InfoTip,3238890,448,42)
{
Info=#133:здесь лежит модуль допустимых значений (внешнее свойство). При этом ноль учитывается. Если делаете часы, то модуль для минут будет 60|
Frame=2
Width=204
Height=60
Margin=2
}
Add(InfoTip,12729919,385,42)
{
Info=#
Frame=2
Height=60
}
END_SDK

Стиль ввода навеян не помню чем (понравился).
Наверняка нечто похожее уже где-то было, но сходу не нашёл, да и практики давно не было - решил размять мозги.

Улучшаем..


карма: 0
начавший
0
файлы: 1code_21576.txt [5KB] [676]
Ответов: 1376
Рейтинг: 197
#312: 2010-12-24 23:22:45 ЛС | профиль | цитата
Может кому-нибудь пригодится маленький About
code_21916.txt
карма: 1

1
файлы: 1code_21916.txt [4.5KB] [721]
Голосовали:Леонид
Ответов: 8887
Рейтинг: 823
#313: 2010-12-24 23:30:24 ЛС | профиль | цитата
foksov, красиво, молодец!
карма: 19

0
Ответов: 1376
Рейтинг: 197
#314: 2010-12-24 23:43:30 ЛС | профиль | цитата
[flood]Тема вспомнилась при нахлынувшей, неожиданно, ностальгии по Spectrum'у и всё же, в той системе много было идей... Не в тему, прячусь во флуд![/flood]
карма: 1

0
Гость
Ответов: 17029
Рейтинг: 0
#315: 2010-12-26 17:13:37 правка | ЛС | профиль | цитата


Редактировалось 10 раз(а), последний 2021-05-21 04:02:19
карма: 0

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)