Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.05.29;
Скачать: [xml.tar.bz2];

Вниз

---|Ветка была без названия|---   Найти похожие ветки 

 
Hooch   (2003-05-19 13:15) [0]

День добрый, Господа !
никак не могу решить проблему: нужно что б "дочерняя" форма "плавала" на "родительской" и не уходила за её пределы, т.е. аналог MDI форм, что б реализовать "плавание" делаю так


with Params do begin
Style := Style or WS_OVERLAPPED;
WndParent := Application.MainForm.Handle;
end;


но никак не получается сделать что б форма не уходила за пределы "родительской" если задать Parent, то начинаются проблемы с фокусом, если задать ManualDock(ParentForm), исчезает заголовок у дочерней формы, как быть то ?


 
Skier   (2003-05-19 13:25) [1]

В экранные координаты переводишь ?


 
Hooch   (2003-05-19 13:30) [2]

в смысле ?


 
Юрий Зотов   (2003-05-19 13:31) [3]

procedure TForm1.Button1Click(Sender: TObject);
begin
with TForm2.Create(Self) do
begin
Parent := Self;
Show
end
end;

И все. Проблем с фокусом не обнаружено.


 
Skier   (2003-05-19 13:33) [4]

WinAPI - ClientToScreen(...)


 
Hooch   (2003-05-19 13:38) [5]

>> Юрий Зотов ©
например: бросьте на Form2 TEdit и попробуйте в него попасть левым кликом мыши, у меня не получается :-(


 
Hooch   (2003-05-19 13:47) [6]

>> Skier ©
предлагаете WM_GETMINMAXINFO отслеживать ?


 
Skier   (2003-05-19 13:51) [7]

WM_MOVING
WM_SIZING
WM_SYSCOMMAND


 
Hooch   (2003-05-19 13:55) [8]

>> Skier ©
а проще нет способа :-)


 
Skier   (2003-05-19 14:02) [9]

>Hooch © (19.05.03 13:55)
Конечно есть ! см. Юрий Зотов © (19.05.03 13:31)


 
Hooch   (2003-05-19 14:03) [10]

>> Skier ©
это не прокатит, см. мои коментарии ниже :-)


 
Skier   (2003-05-19 14:05) [11]

>Hooch © (19.05.03 14:03)
Ну и...какой делаем вывод ? :)


 
Hooch   (2003-05-19 14:08) [12]

>> Skier ©
либо писать на MDI либо застрелится :-))


 
Юрий Зотов   (2003-05-19 14:18) [13]

> Hooch © (19.05.03 13:38)

Хм... а ведь и у меня не получилось. Значит, ручками. Только, думаю, можно отследить размеры и позицию в одном обработчике WM_WINDOWPOSCHANGING. А WM_SYSCOMMAND потребуется для обработки сворачивания-разворачивания и т.п.


 
Hooch   (2003-05-19 14:26) [14]

ну что ж, всем спасибо, бум писать ручками :-)



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

Форум: "Основная";
Текущий архив: 2003.05.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
1-94906
Новичек
2003-05-16 21:02
2003.05.29
Тип PChar


6-94987
Gerda
2003-03-31 15:08
2003.05.29
ShellExecute или WinExec ? & TNMHTTP


14-95015
Slawic
2003-05-12 23:28
2003.05.29
Виртуальная память


7-95131
SS
2003-03-24 13:08
2003.05.29
Вывод данных с АЦП


3-94691
Filat
2003-05-07 15:25
2003.05.29
Как юзать IBBackupService и IBRestoreService?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский