Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.03;
Скачать: CL | DM;

Вниз

Появление дочерних окон   Найти похожие ветки 

 
OlDemon ©   (2003-06-20 08:19) [0]

Вопрос такой:
Дочерние окна появляются чуть правее и чуть ниже ранее созданного. А мне нужно, что бы они появлялись всегда в одном месте. Помогите реализовать. poDesktopCenter и прочие po***Center не предлагать.
Заранее спасибо.


 
OlDemon ©   (2003-06-20 10:48) [1]

Удалено модератором
Примечание: Флуд. (Это предупреждение)


 
Palladin ©   (2003-06-20 10:56) [2]

ну а в конструкторе дочернего окна или на событии OnCreate в ломы чтоли свои координаты указать?
да хотя бы даже после создания в основной форме...
спобов не один... и тебе ничего не пришло в голову?


 
Aleksandr ©   (2003-06-20 12:29) [3]

Palladin © :
Зря Вы так, сударь, не все так просто... Да будет Вам известно, при указании координат при создании прога их игнорирует начисто (только щирину-высоту воспринимает) и все равно делает отступ. А после создания назначать координату - так очень некрасивый визуальный эффект появляется.


 
Palladin ©   (2003-06-20 12:46) [4]


> Aleksandr © (20.06.03 12:29)

создал пустое MDI приложение


procedure TMainForm.CreateMDIChild(const Name: string);
var
Child: TMDIChild;
begin
{ create a new MDI child window }
Child := TMDIChild.Create(Application);
Child.Caption := Name;
Child.Left:=0;
Child.Top:=0;

if FileExists(Name) then Child.Memo1.Lines.LoadFromFile(Name);
end;


попробуте, Вам понравится


 
Palladin ©   (2003-06-20 12:48) [5]


> А после создания назначать координату - так очень некрасивый
> визуальный эффект появляется.

какой интересно...
я ничего не заметил


 
ggsoft ©   (2003-06-20 12:48) [6]

А так что такого-то...
Зачем тогда CreateParams();

TfrmChild = class TForm
...
protected
procedure CreateParams(var Params: TCreateParams); override;
...
end;

TfrmChild.procedure CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
with Params do begin
Width := 400;
Height := 200;
X := 50;
Y := 50;
end;
end;

Все вроде...
А уж как эти самые X,Y, Width, Height передать... так и сам придумай...


 
ggsoft ©   (2003-06-20 12:52) [7]

А лажа здесь-

> TfrmChild. procedure CreateParams(var Params: TCreateParams);
> begin

Любимый "китайский" способ "Copy-Paste"...
конечно должно быть:

TfrmChild.CreateParams(var Params: TCreateParams);

Sorry.


 
Aleksandr ©   (2003-06-20 12:57) [8]

Ну да, я забыл добавить - когда работаешь с несколькими дочерними окнами, вот тогда все и проявляется...


 
OlDemon ©   (2003-06-23 09:55) [9]

to palladin>

И действительно, чего это я сам не додумался?? :))Просто я думал, что это свойство такое, которое можно поменять. Всем спасибо.



Страницы: 1 вся ветка

Текущий архив: 2003.07.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
9-7278
KoHe4Ho }|{e 6ot
2003-01-18 23:17
2003.07.03
Как перерисовывать image или canvas без мигания ?


1-7380
anatolyk
2003-06-22 19:51
2003.07.03
вызов форм


14-7607
Cobalt
2003-06-09 17:51
2003.07.03
Кстати о сессии...


7-7727
Yanis
2003-04-22 15:49
2003.07.03
Format a:


14-7715
UserName
2003-06-15 00:52
2003.07.03
Подскажите плиз