Вверх ↑
Этот топик читают: Гость
Ответов: 32
Рейтинг: 0
#1: 2016-09-19 21:20:36 ЛС | профиль | цитата
Народ, как добавить в компонент это свойство?
Position=Позиционирование формы на экране|14|0|poNone,poCenter,poOwner
Пробовал добавить в конфиг эту строку и скормил "новый" компонент HiAsm, но при компиляции сыплются ошибки:

C:\HiAsm\Elements\delphi\code\hiSimpleForm_259E1D0.pas(55) Error: Undeclared identifier: '_prop_Position'
C:\HiAsm\Elements\delphi\code\hiSimpleForm_259E1D0.pas(55) Error: Undeclared identifier: 'poNone'
C:\HiAsm\Elements\delphi\code\Project6.dpr(7) Fatal: Could not compile used unit 'hiSimpleForm_259E1D0.pas'
Помогите доработать компонент! Не нравится запуск программы с этим компонентом в верхнем углу экрана. А с MainForm размер выходного файла получается больше на 15-20 кб, что для меня критично.
карма: 0

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#2: 2016-09-19 23:33:02 ЛС | профиль | цитата
poOwner бесполезен для SimpleForm, тк она не может быть создана дочерней.
И это последняя бесплатная помощь в качестве бонуса.

Редактировалось 1 раз(а), последний 2016-09-19 23:38:30
карма: 22

0
файлы: 1SimpleForm.zip [2.9KB] [413]
Ответов: 62
Рейтинг: 1
#3: 2016-09-19 23:43:10 ЛС | профиль | цитата
ez7pac, так будет лучше, чем извращаться непосредственно над кодом компонента.

Add(SimpleForm,2953706,343,252)
{
Width=583
Height=337
BorderStyle=1
Position=1
Point(Width)
Point(Height)
Point(doLeft)
Point(doTop)
link(onCreate,15464906:doWork1,[(387,258)(387,296)(331,296)(331,314)])
}
Add(MultiElement,15464906,343,308)
{
link(Data1,2953706:Width,[])
link(Data2,2953706:Height,[])
link(onEvent1,1658040:In,[])
link(onEvent2,605770:In,[])
}
BEGIN_SDK
Add(EditMulti,1553825,147,196)
{
EventCount=2
WorkCount=1
DataCount=2
Width=188
Height=172
VOffset=49
HOffset=63
link(doWork1,4617299:doEvent1,[])
}
Add(Screen,10988972,252,189)
{
}
Add(MathParse,10104683,203,245)
{
MathStr="(%2-%1) div 2"
ResultType=0
link(onResult,1553825:onEvent1,[])
link(X1,1553825:Data1,[(209,221)(216,221)])
link(X2,10988972:Width,[(216,233)(258,233)])
}
Add(MathParse,16329455,217,322)
{
MathStr="(%2-%1) div 2"
ResultType=0
link(onResult,1553825:onEvent2,[(292,328)(292,258)])
link(X1,1553825:Data2,[])
link(X2,10988972:Height,[(230,298)(265,298)])
}
Add(Hub,4617299,161,245)
{
link(onEvent1,10104683:doCalc,[])
link(onEvent2,16329455:doCalc,[(185,258)(185,328)])
}
END_SDK
Add(LineBreak,944634,294,259)
{
Caption="l"
link(Out,2953706:doLeft,[])
Primary=[1658040,98,49]
}
Add(LineBreak,1031662,294,266)
{
Caption="t"
link(Out,2953706:doTop,[])
Primary=[605770,98,49]
}

карма: -1

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#4: 2016-09-19 23:45:50 ЛС | профиль | цитата
Vaeltaja писал(а):
ez7pac, так будет лучше, чем извращаться непосредственно над кодом компонента.

Это прокатило бы, если бы не критичность размера выходного файла
карма: 22

0
Ответов: 62
Рейтинг: 1
#5: 2016-09-19 23:46:49 ЛС | профиль | цитата
nesco, ну уже не +20 кбайт, которые появлятся в MainForm. И вообще, есть UPX.

Редактировалось 1 раз(а), последний 2016-09-19 23:47:45
карма: -1

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#6: 2016-09-19 23:50:06 ЛС | профиль | цитата
Vaeltaja писал(а):
nesco, ну уже не +20 кбайт.

Твоя схема -- 47024 bytes code
Обычная форма -- 42196 bytes code
Чистая Simple -- 28284 bytes code

Редактировалось 1 раз(а), последний 2016-09-19 23:52:32
карма: 22

0
Ответов: 62
Рейтинг: 1
#7: 2016-09-19 23:50:44 ЛС | профиль | цитата
Обычная Main- или SimpleForm?
карма: -1

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#8: 2016-09-19 23:51:53 ЛС | профиль | цитата
Vaeltaja писал(а):
Обычная Main- или SimpleForm?

ОБычная, не Simple
Чистая Simple -- 28284 bytes code
карма: 22

0
Ответов: 32
Рейтинг: 0
#9: 2016-09-19 23:54:55 ЛС | профиль | цитата
Дуплет...

Редактировалось 2 раз(а), последний 2016-09-19 23:56:48
карма: 0

0
Ответов: 62
Рейтинг: 1
#10: 2016-09-19 23:57:00 ЛС | профиль | цитата
nesco, и правда, мой код на 6 кб побольше. И даже UPX сохранил разницу в один килобайт.

Да, хотел все спросить, почему в приложении с формой обязательно должна быть иконка, а не то Runtime error?
карма: -1

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#11: 2016-09-20 00:03:05 ЛС | профиль | цитата
Vaeltaja писал(а):
Да, хотел все спросить, почему в приложении с формой обязательно должна быть иконка, а не то Runtime error?

А ты че, из ресурсов ее вытираешь?
карма: 22

0
Ответов: 62
Рейтинг: 1
#12: 2016-09-20 00:04:58 ЛС | профиль | цитата
Ну да, мне она ни к чему в большинстве случаев.

А все, нашел, что к чему.

Редактировалось 1 раз(а), последний 2016-09-20 00:09:32
карма: -1

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#13: 2016-09-20 00:14:00 ЛС | профиль | цитата
Vaeltaja писал(а):
А все, нашел, что к чему.

И че нашел, поделись?
карма: 22

0
Ответов: 32
Рейтинг: 0
#14: 2016-09-20 00:18:41 ЛС | профиль | цитата
nesco писал(а):

Чистая Simple -- 28284 bytes code

Так почему у меня у меня голая SimpleForm при сборке выдает 47 кб? Думал, может дело в настройках оптимизации, но включил upx - все равно только 35 кб! Где собака зарыта?
карма: 0

0
Разработчик
Ответов: 26305
Рейтинг: 2146
#15: 2016-09-20 00:28:22 ЛС | профиль | цитата
ez7pac писал(а):
Где собака зарыта?

Вот уж ХЗ, где там у тя собака зарыта?
Ты как ее включаешь, эту SimpleForm?
карма: 22

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