Главная страница
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.022 c
14-7698
vidiv
2003-06-16 10:31
2003.07.03
Где лучше хранить данные в INI или во многих TXT.


14-7656
BOA_KAA
2003-06-16 16:02
2003.07.03
А прикольно...


7-7743
Dimka
2003-04-22 18:20
2003.07.03
Возможноли получить доступ к буферу приема или передачи COM порта


14-7608
Jumbo
2003-06-17 04:53
2003.07.03
Command line


3-7341
Alek Aaz
2003-06-10 11:02
2003.07.03
Обработка исключительных операций