Вверх ↑
Этот топик читают: Гость
Ответов: 1376
Рейтинг: 198
#1: 2012-04-04 22:13:48 ЛС | профиль | цитата
Есть некая координата на карте, вопрос: "Как закоординатить следущую точку при перетаскивании окна координаты?" (точка захватывается и перетаскивается) координаты в процентах. Чего я не учёл?
kk
карма: 1

0
файлы: 1kk.zip [178.6KB] [161]
Ответов: 8976
Рейтинг: 825
#2: 2012-04-05 00:03:11 ЛС | профиль | цитата
foksov, у меня нижние точки дочерней формы "Отступ от родительского коипонента" содержат почему-то отступ относительно экрана а не относительно родительской формы
карма: 19

1
Голосовали:foksov
Ответов: 1376
Рейтинг: 198
#3: 2012-04-05 01:24:58 ЛС | профиль | цитата
Леонид, спасибо за отзывчивость, но проблема не решена...
Да я пробовал всякие отступы, но, видимо, у меня в голове не те отступы... (чисто для себя)
карма: 1

0
Разработчик
Ответов: 26324
Рейтинг: 2147
#4: 2012-04-05 02:22:21 ЛС | профиль | цитата
foksov писал(а):
Да я пробовал всякие отступы, но, видимо, у меня в голове не те отступы... (чисто для себя)

Попробуй назначить родителем окно главной формы элементом SetParent. Дело в том, что все формы принадлежат окну экрана, а надо сделать форму в форме
карма: 22

0
Ответов: 758
Рейтинг: 112
#5: 2012-04-05 11:28:06 ЛС | профиль | цитата
foksov, Систему координат привязывай к основному окну

Add(MainForm,2953706,308,308)
{
Width=893
Height=632
Name="form"
ClientSize=0
Position=1
Point(onMove)
Point(onResize)
Point(Width)
Point(Height)
link(onCreate,16715218:doEvent1,[])
link(onResize,668115:doEvent1,[])
}
Add(Image,5772677,763,385)
{
Width=885
Height=605
Align=5
ViewStyle=1
Point(onMouseMove)
Point(Width)
Point(Height)
}
Add(LZMA,2154479,483,322)
{
link(onStream,6426068:doRead,[])
}
Add(BitmapStream,6426068,532,322)
{
link(onRead,7104315:doEvent1,[])
}
Add(FileStream,12179884,427,322)
{
FileName="KK.map"
Point(doCopyFromStream)
link(onLoad,2154479:doDeCompress,[(471,328)(471,335)])
}
Add(Hub,16715218,392,322)
{
link(onEvent1,12179884:doOpen,[])
link(onEvent2,12179884:doClose,[])
}
Add(Bitmap,7440361,693,322)
{
}
Add(Hub,7104315,581,322)
{
InCount=2
OutCount=4
link(onEvent1,7440361:doLoad,[])
link(onEvent2,7506698:doRotate,[(618,335)(618,391)])
link(onEvent3,6885839:doData,[(611,342)(611,671)])
link(onEvent4,9746749:doData,[(605,349)(605,678)])
}
Add(Img_Rotate,7506698,693,385)
{
Angle=90
link(onResult,5772677:doLoad,[])
link(Bitmap,7440361:Bitmap,[])
}
Add(ChildForm,4836684,798,665)
{
FirstUsage=0
}
BEGIN_SDK
Add(EditMulti,7707353,200,200)
{
WorkCount=2
DataCount=3
Width=482
Height=284
link(doWork1,15720961:doShiftLeft,[(256,206)(256,342)])
link(doWork2,15720961:doShiftTop,[(248,213)(248,349)])
}
Add(MainForm,15720961,462,287)
{
Left=35
Top=105
BorderStyle=0
DragForm=0
FormFastening="parent.form"
Point(doPicture)
Point(Left)
Point(Top)
Point(doLeft)
Point(doTop)
Point(doShiftLeft)
Point(doShiftTop)
Point(onMouseDown)
}
Add(BitmapArray,14424918,399,245)
{
Bitmaps=['Bitmap'=[ZIPE604000078DA73F27DC6C200066640AC01C42250CCC8200116DF00954706FF071360C040C46B245210D33AB265C970D27FA23DC540AE46AC8A47F5D222A819A89D36284C9394E405CAF3207D000011968285],'Bitmap'=[ZIPE604000078DA73F27DC6C200066640AC01C42250CCC8200116DF00954706FF47013500031851A28B2413188816A4A25E06B2A428D73B50FEA5308E284C1BA3002B0000E34A9671],'Bitmap'=[ZIPE604000078DA73F27DC6C200066640AC01C42250CCC8200116DF00954706FF47C148050C6044B646F2B453A29712378F82E10100FABCA265],'Bitmap'=[ZIPE604000078DA73F27DC6C200066640AC01C42250CCC8200116DF00954706FF47C1281805A360880000123DAE59]]
}
Add(Timer,753003,301,287)
{
Interval=200
link(onTimer,1917769:doNext,[])
}
Add(CounterEx,1917769,350,287)
{
Max=3
link(onNext,16136676:doRead,[])
}
Add(ArrayRW,16136676,399,287)
{
link(onRead,15720961:doPicture,[(447,293)(447,321)])
link(Array,14424918:Array,[])
}
END_SDK
Add(MathParse,12220508,434,497)
{
DataCount=3
MathStr="%3*%1/%2"
link(onResult,581968:doValue,[])
link(X1,398797:Var2,[])
link(X2,12408744:Value,[])
link(X3,8622755:Var1,[(454,485)(490,485)(490,537)])
}
Add(Memory,581968,637,497)
{
Default=Integer(30)
}
Add(Memory,626538,686,497)
{
Default=Integer(40)
}
Add(DoData,6885839,637,665)
{
link(onEventData,4836684:doWork1,[])
link(Data,8622755:Var2,[])
}
Add(DoData,9746749,686,672)
{
link(onEventData,4836684:doWork2,[])
link(Data,1110867:Var2,[])
}
Add(Memory,12408744,441,441)
{
Default=Integer(50)
Point(Data)
link(Data,398797:Var3,[(447,393)])
}
Add(Hub,3620371,392,497)
{
OutCount=4
link(onEvent1,12220508:doCalc,[])
link(onEvent2,12408744:doValue,[(424,510)(424,447)])
link(onEvent3,6899927:doCalc,[(413,517)(413,601)])
link(onEvent4,257201:doValue,[(424,524)(424,545)])
}
Add(GetDataEx,398797,434,388)
{
Angle=3
link(Data,2953706:Width,[(314,393)])
}
Add(GetDataEx,8622755,637,532)
{
link(Data,581968:Value,[])
}
Add(Hub,668115,350,336)
{
link(onEvent1,3620371:doEvent1,[(380,342)(380,503)])
link(onEvent2,7104315:doEvent2,[(570,349)(570,335)])
}
Add(MathParse,6899927,420,595)
{
DataCount=3
MathStr="%3*%1/%2"
link(onResult,626538:doValue,[(679,601)(679,503)])
link(X1,13620299:Var1,[(426,530)])
link(X2,257201:Value,[(433,583)(475,583)])
link(X3,1110867:Var1,[(440,551)])
}
Add(GetDataEx,1110867,686,546)
{
link(Data,626538:Value,[])
}
Add(Memory,257201,469,539)
{
Default=Integer(50)
Point(Data)
link(Data,13620299:Var2,[])
}
Add(GetDataEx,13620299,469,525)
{
link(Data,2953706:Height,[(475,375)(321,375)])
}
карма: 1

0
Разработчик
Ответов: 26324
Рейтинг: 2147
#6: 2012-04-05 11:43:35 ЛС | профиль | цитата
miver писал(а):
Систему координат привязывай к основному окну

Если не привязать мигающую точку к главной форме, то ей можно ездить по всему экрану. Вопрос -- а нужно ли это
Мне так кажется, что точку надо сначала привязать к своему окну, а дальше уже думать про координаты
карма: 22

0
Ответов: 8976
Рейтинг: 825
#7: 2012-04-05 12:18:06 ЛС | профиль | цитата
foksov
nesco писал(а):
дальше уже думать про координаты
И не забывать, что при уменьшении масштаба карты во избежании неточности надо переходить на градусные координаты, математика получится чуть посложнее
карма: 19

0
Ответов: 1376
Рейтинг: 198
#8: 2012-04-16 20:50:46 ЛС | профиль | цитата
Леонид писал(а):
во избежании неточности надо переходить на градусные координаты
та ненадо мне таких точностей, точки бегают за своим положением и ладно

После очередного возвращения к схеме захотелось мультиточности и вот что получилось... точки добавляются и удаляются, но не пойму как сделать так, чтоб вновьдобавляемая точка сразу появлялась на своём месте она, сволочь, появляется вне основного окна, но при малейшем смещении окна или изменении размера моментально оказывается на своем месте, как ни в чем не бывало, мол "а я тут и была" Вопросирую к соображающим в этом вопросе: как эту точку убедить появляться на приписанном ей месте? Инструкция: ПКМ на пустом месте - добавление точки, а на точке - Удалить
mappntmulti.zip
карма: 1

0
файлы: 1mappntmulti.zip [5.2KB] [104]
8
Сообщение
...
Прикрепленные файлы
(файлы не залиты)