Вверх ↑
Ответов: 264
Рейтинг: 18
#1: 2019-06-13 18:24:52 ЛС | профиль | цитата
Netspirit, в этом примере
схема

Add(MainForm,772890,196,56)
{
 Width=533
 Height=381
 Caption="Основная форма"
 Point(onMove)
 link(onMove,10430762:doWork2,[(289,83)(289,118)])
}
Add(Button,7501961,196,105)
{
 Left=10
 Top=10
 Width=150
 Height=30
 Caption="Открыть дочку по центру"
 link(onClick,10430762:doWork1,[])
}
Add(ChildForm,10430762,350,105)
{
}
BEGIN_SDK
  Add(EditMulti,13223422,21,21)
  {
   WorkCount=2
   Width=363
   Height=298
   link(doWork1,10571533:doVisible,[(112,27)(112,118)])
   link(doWork2,6274261:doWork2,[(137,34)(137,258)])
  }
  Add(MainForm,10571533,196,84)
  {
   Left=35
   Top=105
   Width=272
   Height=215
   Visible=1
   Caption="Дочка"
   Position=4
   Point(doVisible)
   Point(onMove)
   link(onMove,6002180:doWork2,[(236,111)(236,174)])
  }
  Add(Button,3840990,182,161)
  {
   Left=30
   Top=25
   Width=185
   Caption="Вторая дочка по центру дочки"
   link(onClick,6002180:doWork1,[])
  }
  Add(Button,7690777,182,245)
  {
   Left=30
   Top=100
   Width=185
   Caption="Вторая дочка по центру основной"
   link(onClick,6274261:doWork1,[])
  }
  Add(ChildForm,6002180,266,161)
  {
  }
  BEGIN_SDK
    Add(EditMulti,9397443,21,21)
    {
     WorkCount=2
     link(doWork1,478120:doVisible,[(112,27)(112,111)])
     link(doWork2,9272897:doWork2,[(112,34)(112,118)])
    }
    Add(MainForm,478120,203,77)
    {
     Left=35
     Top=105
     Width=310
     Height=102
     Visible=1
     Caption="дочка 2 OwnerCentr"
     Position=3
     Point(doVisible)
     Point(doCenterPos)
    }
    Add(Button,14489968,49,161)
    {
     Left=20
     Top=15
     Width=60
     Caption="CenterPos"
     link(onClick,9272897:doWork3,[(165,167)])
    }
    Add(HubEx,9272897,161,112)
    {
     link(onEvent,478120:doCenterPos,[])
    }
  END_SDK
  Add(ChildForm,6274261,266,245)
  {
  }
  BEGIN_SDK
    Add(EditMulti,2261317,21,21)
    {
     WorkCount=2
     link(doWork1,14958287:doVisible,[(98,27)(98,139)])
     link(doWork2,8776669:doWork2,[(98,34)(98,146)])
    }
    Add(MainForm,14958287,175,105)
    {
     Left=35
     Top=105
     Width=315
     Height=71
     Visible=1
     Caption="дочка 2 MainCenter"
     Position=4
     Point(doVisible)
     Point(doCenterPos)
    }
    Add(Button,8045421,91,175)
    {
     Left=20
     Top=5
     Width=60
     Caption="CenterPos"
     link(onClick,8776669:doWork3,[(151,181)])
    }
    Add(HubEx,8776669,147,140)
    {
     link(onEvent,14958287:doCenterPos,[])
    }
  END_SDK
END_SDK
дочерняя форма, открытая из дочерней формы со свойством Position = poMainCenter, открывается точно по центру основной формы как и было задумано. Однако, если её центрировать методом doCenterPos, она центрируется относительно дочерней формы из которой была открыта, а не относительно основной формы.
карма: 3

0
Редактировалось 1 раз(а), последний 2019-06-13 18:26:52