Вверх ↑
Этот топик читают: Гость
Ответов: 182
Рейтинг: 4
#661: 2025-03-31 13:46:41 ЛС | профиль | цитата
4. Проблема с панель выбора страниц pagecontrol. По заголовку видно, что она отсутствует.
Проблем работы компилятора delphi по данным вопросам нет.
Add(MainForm,3085066,392,196)
{
Width=1231
Height=840
link(onCreate,747899:doData,[(446,216)(446,230)])
}
Add(PageControl,15905697,728,189)
{
Width=1200
Height=800
Color=16761414
ParentFont=0
TabOrder=1
Layout=""
HeightScale=100
Childrens=#6:spisok|
Selected="spisok"
AutoCreate=1
SelectAdd=0
IconsManager=""
link(onChange,16228750:doEvent1,[(796,195)(796,174)])
link(onEventData,13152266:doSetOnChange,[(789,202)(789,181)])
AddHint(-17,-33,15,13,@Hint)
}
BEGIN_SDK
Add(EditPolyMulti,8037003,21,21)
{
WorkCount=#5:##add|8:##select|
EventCount=#8:onChange|11:onEventData|
Point(##add)
Point(##select)
}
Add(PagePanel,6369891,105,105)
{
Left=200
Top=15
Width=1030
Height=500
ParentFont=0
Caption="Главная"
}
END_SDK
BEGIN_SDK
Add(EditPolyMulti,1959724,21,21)
{
WorkCount=#5:##add|8:##select|
EventCount=#8:onChange|11:onEventData|
Width=993
Height=809
Point(##add)
Point(##select)
link(##add,8309102:doData,[(77,27)(77,433)])
}
Add(PagePanel,598195,98,371)
{
@Color=43775
Width=1058
Height=694
ParentFont=0
Caption="Картотека"
ImageIndex=1
Point(onChange)
Point(PHandle)
link(onChange,9238457:In,[])
}
Add(DoData,8309102,98,427)
{
link(onEventData,13943175:doEvent1,[])
link(Data,598195:PHandle,[])
}
Add(LineBreak,14910547,959,21)
{
link(Out,1959724:onChange,[])
Primary=[9238457,-812,350]
}
Add(LineBreak,14325804,889,28)
{
link(Out,1959724:onEventData,[])
Primary=[1674126,-707,413]
}
Add(VBoxLayout,8125766,224,427)
{
@Color=65535
Name="kart_tbl_vert"
WidthScale=100
}
Add(MTStrTbl,15480570,630,336)
{
@Color=43775
Left=-5
Width=945
Height=595
Color=-16777192
Font=[GOST type A,14,0,0,204]
Cursor=2
Name="kartoteka_krt"
Hint=" "
HintManager=""
Layout="kart_tbl_vert"
WidthScale=100
HeightScale=100
DoubleBuffered=0
ColorItems=0
HeaderDragDrop=0
Grid=0
Point(onDblClick)
Point(onMouseDown)
}
Add(Hub,13943175,147,427)
{
OutCount=3
link(onEvent1,8125766:doResize,[])
link(onEvent2,1936187:doProcessMessages,[(193,440)(193,468)])
link(onEvent3,1674126:In,[])
}
Add(InfoTip,16016660,455,462)
{
Info=#47:Загрузка|
Width=379
Height=207
}
Add(GlobalVar,9909800,483,231)
{
@Color=11206570
Name="columns"
Data=String(dsfdsfsdfsdfsdf$fdgdghbvcbvnvbnb$dfgcvgbcvbvbmnjhgfdzxcvbn$jkhm,kjhgjkh$fdgjuytrewrtyuikjhgfd$ghh,hxbcnm,mn$hghjkghjghg)
}
Add(GlobalVar,12373208,546,231)
{
@Color=11206570
Name="string"
Data=String(<dt>12323132123131321321321$22222222222222222$55555555555555555555555555555$588888888888888$858884</dt>)
}
Add(Application,1936187,224,462)
{
}
Add(MT_String,11176294,630,504)
{
Delimeter="$"
link(onResult,237645:doEvent1,[(698,510)(698,559)])
link(Str1,9409056:Var,[])
}
Add(MT_String,4375090,658,539)
{
Delimeter="$"
link(onResult,6470376:doAddRow,[])
}
Add(Hub,12459444,469,511)
{
link(onEvent1,11176294:doMT,[])
link(onEvent2,8341114:doSearch,[(501,524)(501,587)])
}
Add(MST_ColAction,8113783,805,630)
{
@Color=43775
Action=9
AutoWidthByHeader=0
MinColWidth=30
MSTControl="kartoteka_krt"
}
Add(DoData,5099556,756,630)
{
Data=Integer(-1)
link(onEventData,8113783:doColAction,[])
}
Add(BlockFind,8341114,518,581)
{
IncludeBlock=1
StartBlock="<dt>"
EndBlock="</dt>"
link(onSearch,4375090:doMTString,[(586,587)(586,559)])
link(onEndSearch,671344:doEvent1,[(636,594)(636,629)])
link(Text,16155854:Var,[])
}
Add(MST_DB,6470376,777,539)
{
@Color=43775
MSTControl="kartoteka_krt"
Point(doClearAll)
}
Add(Application,10241980,756,581)
{
}
Add(Hub,671344,721,623)
{
link(onEvent1,10241980:doProcessMessages,[(745,629)(745,587)])
link(onEvent2,5099556:doData,[])
}
Add(Hub,237645,721,553)
{
link(onEvent1,6470376:doClearAll,[])
link(onEvent2,6470376:doAddCols,[(756,566)(756,552)])
}
Add(Hub,3411724,420,259)
{
OutCount=3
link(onEvent1,14562161:doValue,[])
link(onEvent2,14401794:doValue,[])
link(onEvent3,12459444:doEvent1,[(452,279)(452,517)])
}
Add(Memory,14562161,546,259)
{
Default=String(<dt></dt>)
Point(Data)
link(Data,12373208:Var,[])
}
Add(Memory,14401794,483,266)
{
Point(Data)
link(Data,9909800:Var,[])
}
Add(LineBreak,1723933,483,315)
{
Caption="clm"
Type=1
link(Data,14401794:Value,[])
Primary=[9409056,147,168]
}
Add(LineBreak,12274007,546,308)
{
Caption="dt"
Type=1
link(Data,14562161:Value,[])
Primary=[16155854,-28,238]
}
Add(Timer,9198435,294,259)
{
AutoStop=1
link(onTimer,3411724:doEvent1,[])
}
END_SDK
Add(LineBreakEx,6055883,609,189)
{
@Color=65535
Caption="add"
Type=1
link(OnEvent,15905697:##add,[])
}
Add(InlineCode,13152266,805,175)
{
WorkPoints=#13:doSetOnChange|
EventPoints=#8:onChange|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|32:uses Windows, Kol, Share, Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|23: Control: PControl;|35: procedure _OnChange(Obj:PObj);|0:|9: public|23: onChange: THI_Event;|56: procedure doSetOnChange(var _Data:TData; Index:word);|7: end;|3: |14:implementation|0:|36:procedure THiAsmClass.doSetOnChange;|16:var i: integer; |5:begin|50: Control := PControl(ToInteger(_Data)).Parent;|32: if Control = nil then exit;|41: Control.OnSelChange := _OnChange; |4:end;|0:|32:procedure THiAsmClass._OnChange;|5:begin|43: _hi_OnEvent(onChange, Control.CurIndex);|4:end;|0:|4:end.|
link(onChange,16228750:doEvent2,[])
}
Add(LineBreakEx,8236044,651,196)
{
@Color=65450
Caption="sel"
Type=1
link(OnEvent,15905697:##select,[])
}
Add(Hub,16228750,868,168)
{
InCount=2
OutCount=1
link(onEvent1,3124243:doWork,[])
}
Add(LineBreakEx,3124243,903,168)
{
@Color=65450
Caption="sel"
}
Add(LineBreakEx,3314464,511,224)
{
@Color=65535
Caption="add"
}
Add(DoData,747899,469,224)
{
Data=String(spisok)
link(onEventData,3314464:doWork,[])
}


5. Не работает VBJScript

Compiling D:\Soft\HiAsm 4 AltBuild FPC\Elements\delphi\code\hiVBJScript.pas
hiVBJScript.pas(5,48) Fatal: Can't find unit ActiveKOL used by hiVBJScript
Fatal: Compilation aborted

Пример-заготовка
Add(MainForm,2953706,511,308)
{
}
Add(LineBreak,4793756,896,385)
{
Caption="send_email"
link(Out,3818459:doString,[])
Primary=[15249142,-168,-56]
}
Add(LineBreak,11587917,854,217)
{
Caption="email"
Type=1
Primary=[975585,252,70]
}
Add(Message,2574450,1414,399)
{
Message="Сообщение отправлено указанному адресату."
Caption="Сообщение"
Icon=4
}
Add(Message,16327290,1456,392)
{
Caption="Ошибка соединения"
}
Add(GlobalVar,15347560,1190,392)
{
Name="mail.status"
Data=String(0.2)
link(onValue,14723864:doCompare,[])
}
Add(If_else,14723864,1281,392)
{
Op2=Integer(1)
link(onTrue,7385638:doString,[])
link(onFalse,4514939:doEvent1,[])
link(Op1,15347560:Var,[(1287,380)(1249,380)(1249,423)(1196,423)])
AddHint(20,-29,21,13,Op2)
}
Add(FormatStr,7385638,1365,392)
{
link(onFString,16327290:doMessage,[])
link(Str1,4146949:vError,[(1371,380)(1227,380)(1227,436)(1084,436)])
link(Str2,4146949:vDesc,[(1378,380)(1234,380)(1234,436)(1091,436)])
}
Add(GlobalVar,12168455,1085,238)
{
@Color=65535
Name="Smtp_Server_Port"
}
Add(GlobalVar,12541372,973,315)
{
@Color=65535
Name="Email_otk"
}
Add(GlobalVar,7731725,1148,280)
{
@Color=65535
Name="Subject"
}
Add(GlobalVar,5642204,1127,336)
{
@Color=65535
Name="Text_body"
}
Add(FormatStr,3818459,973,385)
{
DataCount=1
Mask="Отправить письмо с файлом на адрес: "%1"?"
link(onFString,5239143:doMessage,[])
link(Str1,4350638:Var2,[])
}
Add(GetDataEx,4350638,973,350)
{
link(Data,12541372:Var,[])
}
Add(GlobalVar,7915571,1078,217)
{
@Color=65535
Name="Smtp_Server"
}
Add(LineBreak,13670727,903,217)
{
Caption="pass"
Type=1
Primary=[8732882,196,49]
}
Add(Message,5239143,1029,385)
{
Caption="Вопрос"
Type=2
Icon=2
Point(onYES)
link(onYES,4146949:doWork,[])
}
Add(GlobalVar,12347297,1134,308)
{
@Color=65535
Name="Путь"
}
Add(VBJScript,4146949,1078,392)
{
WorkPoints=#6:doWork|
EventPoints=#6:onSend|
VarPoints=#6:vError|5:vDesc|
DataPoints=#10:SmtpServer|14:SmtpServerPort|12:SendUserName|12:SendPassword|4:From|2:To|7:Subject|8:Textbody|6:File_1|6:File_2|6:File_3|3:ssl|3:tls|12:authenticate|
Script=#10:Dim strErr|10:Dim objMes|0:|23:Sub doWork(Data, Index)|20:On Error Resume Next|79:'------------------------------------------------------------------------------|40:Set objMes = CreateObject("CDO.Message")|140:objMes.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = sys.SmtpServer 'Почтовый сервер или IP адрес|137:objMes.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = sys.SmtpServerPort 'Порт сервера SMTP|21:' "smtp.mail.ru" 465 |23:' "smtp.yandex.ru" 465|19:' "smtp.qip.ru" 25|22:' "smtp.gmail.com" 465|193:objMes.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = sys.authenticate '0 – без аутентификации,1 - базовая аутентификация,2 – аутентификация NTLM|149:objMes.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 '1 каталог Pickup, 2- не использовать каталог Pickup|150:objMes.Configuration.Fields.Item("https//schemas.microsoft.com/cdo/configuration/sendtls") = sys.tls ' использовать STARTTLS (port -25, (True,False))|135:objMes.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = sys.ssl ' использовать SSL (True,False)|128:objMes.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60 ' время тайм-аута|132:objMes.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = sys.SendUserName 'Имя пользователя|122:objMes.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = sys.SendPassword 'пароль|35:objMes.Configuration.Fields.Update'|0:|51:objMes.BodyPart.Charset ="windows-1251" ' кодировка|35:'objMes.BodyPart.CharSet = "utf-8" |38:objMes.From = sys.From 'От кого письмо|32:objMes.To = sys.To ' Кому письмо|57:objMes.Subject = sys.Subject 'Тема письма + текущая дата|55:objMes.Textbody = sys.Textbody 'Что будет в теле письма|0:|32:objMes.AddAttachment sys.File_1'|25:If sys.File_2 <> "0" then|33: objMes.AddAttachment sys.File_2'|7: End If|25:If sys.File_3 <> "0" then|33: objMes.AddAttachment sys.File_3'|7: End If|0:|34:'... перечень прикрепленных файлов|30:'objMes.AddAttachment "файл N"|80:'-------------------------------------------------------------------------------|11:objMes.Send|0:|25: If Err.Number = 0 then |15: sys.onSend 0|6: else|15: sys.onSend 1|8: End If|0:|20:Set objMes = Nothing|7:End Sub|0:|28:Function GetVar(Data, Index)|19: Select Case Index|34: Case "vError" ' номер |25: strErr = Err.Number|33: GetVar = strErr |28: Case "vDesc" ' описание|44: strErr = Err.Description |21: GetVar = strErr|12: End Select|12:End Function|
UseName=0
PColor(onSend,-1)
link(onSend,15347560:doValue,[])
link(SmtpServer,7915571:Var,[])
link(SmtpServerPort,12168455:Var,[])
link(SendUserName,13070849:Var1,[(1098,348)])
link(SendPassword,8732882:Var,[])
link(From,13070849:Var2,[])
link(To,4350638:Var3,[(1119,355)])
link(Subject,7731725:Var,[(1126,336)(1154,336)])
link(Textbody,5642204:Var,[])
link(File_1,12347297:Var,[])
link(File_2,20171:Var,[])
link(File_3,16581783:Var,[])
link(ssl,13781290:Var,[(1161,357)(1196,357)])
link(tls,4060576:Var,[(1168,368)(1217,368)])
link(authenticate,10917687:Var,[(1175,332)(1161,332)])
}
Add(Hub,4514939,1330,399)
{
link(onEvent1,2574450:doMessage,[])
link(onEvent2,4701701:In,[(1351,412)(1351,440)])
}
Add(LineBreak,8828095,441,329)
{
Caption="close"
link(Out,2953706:doClose,[])
Primary=[4701701,924,105]
}
Add(GetDataEx,13070849,1106,343)
{
link(Data,975585:Var,[])
}
Add(GlobalVar,13781290,1190,308)
{
@Color=65535
Name="SSL"
}
Add(GlobalVar,4060576,1211,329)
{
@Color=65535
Name="TLS"
}
Add(GlobalVar,10917687,1155,259)
{
@Color=65535
Name="Smtp_authenticate"
}
Add(LineBreak,10420615,966,217)
{
Caption="Plil2"
Type=1
Color=65535
Primary=[20171,175,133]
}
Add(LineBreak,8771738,1015,217)
{
Caption="Pril3"
Type=1
Color=65535
Primary=[16581783,133,147]
}

Редактировалось 8 раз(а), последний 2025-04-02 15:05:21
карма: 1

0
Ответов: 2341
Рейтинг: 682
#662: 2025-04-02 14:12:07 ЛС | профиль | цитата
Netspirit, в этой теме: Добавление аттрибутов REPARSE_POINT и получения ссылок проверял свои доработки на работу fpc компиляторов. Заметил что у элемента FileAttributes (Атрибуты файла) не работает doRead. Выдает ошибку 2 (getLastError), на этом участке кода:

  if not GetFileAttributesEx(PChar(fFileName), GetFileExInfoStandard, @fAttrData) then
Только на компиляторах FPC-32U и FPC-64U.
Вот тестовая схема из справки по элементу, только Message к onError дабавил:

Add(MainForm,15551238,245,168)
{
Caption="Пример использования FileAttributes"
link(onCreate,5912578:doExecute,[])
}
Add(FileAttributes,257569,392,189)
{
Point(FileSize)
Point(onError)
link(onRead,3265491:doString,[(452,195)(452,234)(382,234)(382,265)])
link(onError,2482902:doMessage,[])
}
Add(FormatStr,3265491,392,259)
{
DataCount=3
Mask="Date create %1\r\nDate modif %2\r\nSize %3 byte"
link(onFString,1288876:doAdd,[])
link(Str1,257569:DateCreate,[])
link(Str2,257569:DateModify,[(405,240)(412,240)])
link(Str3,257569:FileSize,[(412,245)(419,245)])
}
Add(Memo,1288876,448,259)
{
Left=10
Top=90
Width=365
Height=145
Ctl3D=1
}
Add(ODialog,5912578,301,182)
{
link(onExecute,13000121:doEvent1,[])
}
Add(Label,3222666,392,140)
{
Left=10
Top=10
Width=365
Height=58
Font=[MS Sans Serif,10,0,8388608,1]
AutoSize=1
Alignment=2
}
Add(Hub,13000121,350,182)
{
link(onEvent1,3222666:doText,[(378,188)(378,146)])
link(onEvent2,257569:doRead,[])
}
Add(Message,2482902,483,196)
{
}
карма: 11

0
Ответов: 1110
Рейтинг: 80
#663: 2025-04-02 16:41:12 ЛС | профиль | цитата
sla8a писал(а):
Только на компиляторах FPC-32U и FPC-64U.

Работает на всех компиляторах. Даже на штатном fpc. Win 10 x64
Недавно обновление было, у меня последнее 2425

Или я чтото не так понял, выдает данные, месседж не выскакивает
карма: 0

0
Ответов: 182
Рейтинг: 4
#664: 2025-04-03 08:16:40 ЛС | профиль | цитата
Работает на всех компиляторах. Даже на штатном fpc. Win 10 x64
Недавно обновление было, у меня последнее 2425


Системный код 2 выдает, после выбора файла для загрузки.
карма: 1

0
Ответов: 2341
Рейтинг: 682
#665: 2025-04-03 08:27:58 ЛС | профиль | цитата
Все переустановил и ошибки нет. Видно в момент тестирования что-то повредил.
карма: 11

0
Ответов: 1110
Рейтинг: 80
#666: 2025-04-03 08:28:19 ЛС | профиль | цитата
strannik_nebes писал(а):
Системный код 2 выдает,

Тю..
Странно, специально проверил на win7 x32, тоже работает.
карма: 0

0
Ответов: 182
Рейтинг: 4
#667: 2025-04-03 09:03:36 ЛС | профиль | цитата
После замены ini файлов обратно из архива элементов тестового FPC заработало. Забыл вернуть похоже. Отличаются критично. (это не касается замечаний, указанных выше)

Редактировалось 3 раз(а), последний 2025-04-07 09:48:34
карма: 1

0
Ответов: 4654
Рейтинг: 760
#668: 2025-04-07 20:47:56 ЛС | профиль | цитата
strannik_nebes, PageControl будет поправлен.
VBJScript с самого начала не работал, я не осилил поправить. Прозрачность в AlphaImage пока не знаю как вылечить.
С MST_ColAction все равно не вижу проблемы, кроме того что черным мерцает при перерисовке в твоем примере.

До нового варианта Zipper, может, когда-то дойдут руки. Проблема с Delphi-вариантами в том что существующие модули слишком завязаны на компиляторы, которые в HiAsm урезаны. Только в новом FPC можно более легко подключить его стандартный.
Промежуточный способ - сделать DLL в новом Delphi с его Zip-классов, и уже её подключить к HiAsm, вместо bszip.dll.
карма: 26

0
Ответов: 182
Рейтинг: 4
#669: 2025-04-08 08:37:13 ЛС | профиль | цитата
Netspirit, о мерцании в PageControl речь и идет. С Delphi таких проблем нет с отрисовкой.

На мой взгляд, маловато народу для такого большого дела. Увы, я не программировал на языке паскаль, а только на ассемблере (intel MCS-96, PIC8, PIC16) и языке С (С++) для микроконтроллеров STM32, К1986ВЕ9х и вариации когда-то давно. Если бы раньше изучил -помог. А так только тестированием.
Рекламы Hiasm-а не хватает).

Редактировалось 2 раз(а), последний 2025-04-08 11:30:46
карма: 1

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