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

Вниз

StayOnTop   Найти похожие ветки 

 
d6   (2002-08-31 20:57) [0]

Как сделать форму StayOnTop. При установке свойства FormStyle в fsSatyOnTop форма оттображается только поверх окон своего приложения. А мне надо поверх всех.


 
Алексей Ким   (2002-08-31 20:59) [1]

Уже спрашивал... и мне надо было но люди такие
ответы писали...


 
Ученик   (2002-08-31 21:22) [2]

>d6 (31.08.02 20:57)
Оно будет поверх всех, пока другое приложение это не изменит.


 
VID   (2002-09-01 00:34) [3]

SetWindowPos(form1.handle, hwnd_topmost, 0,0,0,0, swp_nomove+swp_nosize);


 
d6   (2002-09-01 11:26) [4]


> VID ©

Это проходит только с главной формой. А мне надо любую.


 
VID   (2002-09-01 12:36) [5]

to d6: а ты оказывается шутник :)
а что если вместо приведённого мною в качестве примера FORM1.Handle ты напишешь, MyNotMainForm.Handle ?
т.е. в первом параметре надо указывать хэндл той формы, которую ты собираешься закинуть на верхний уровень.


 
L   (2002-09-01 13:31) [6]


> to d6: а ты оказывается шутник :)
> а что если вместо приведённого мною в качестве примера FORM1.Handle
> ты напишешь, MyNotMainForm.Handle ?
> т.е. в первом параметре надо указывать хэндл той формы,
> которую ты собираешься закинуть на верхний уровень.

Я так и делаю. Форма выходит на верхний уровень, но стоит мне сделать активным любое другое окно (IE например) и она благополучно скрывается под ним.


 
d6   (2002-09-01 13:31) [7]


> to d6: а ты оказывается шутник :)
> а что если вместо приведённого мною в качестве примера FORM1.Handle
> ты напишешь, MyNotMainForm.Handle ?
> т.е. в первом параметре надо указывать хэндл той формы,
> которую ты собираешься закинуть на верхний уровень.

Я так и делаю. Форма выходит на верхний уровень, но стоит мне сделать активным любое другое окно (IE например) и она благополучно скрывается под ним.


 
Юрий Зотов   (2002-09-01 14:29) [8]

А что же Вы хотели? Вы ставите форму поверх всех, но ведь этого мало - надо еще запретить ее перемещение по Z-порядку.

type
TForm1 = class(TForm)
procedure FormShow(Sender: TObject);
private
procedure WMWindowPosChanging(var Message: TWMWindowPosChanging); message WM_WINDOWPOSCHANGING;
end;

procedure TForm1.WMWindowPosChanging(var Message: TWMWindowPosChanging);
begin
inherited;
with Message.WindowPos^ do flags := flags or SWP_NOZORDER
end;

procedure TForm1.FormShow(Sender: TObject);
begin
SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE)
end;


 
Ученик   (2002-09-01 14:42) [9]

>Юрий Зотов © (01.09.02 14:29)
Извиняюсь, но с этим даже не поверх TaskBar


 
Юрий Зотов   (2002-09-01 14:45) [10]

Естественно. TaskBar - он и в Aфрике TaskBar, у него особый статус.


 
Ученик   (2002-09-01 14:47) [11]

>Юрий Зотов © (01.09.02 14:45)
Не, не естественно,
без with Message.WindowPos^ do flags := flags or SWP_NOZORDER, все как надо


 
Юрий Зотов   (2002-09-01 14:53) [12]

Точно. Tnx.
Тогда вообще непонятно - а какие же проблемы у d6?



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

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

Наверх





Память: 0.47 MB
Время: 0.01 c
14-35904
Kaban
2002-08-19 12:47
2002.09.12
Еще прикольная задачка


1-35637
jcrush
2002-09-01 11:09
2002.09.12
фильтры richedit в цвет


3-35547
@lex
2002-08-21 14:55
2002.09.12
TQuery, главный-подчиненный


14-35919
Лана Розанова
2002-08-19 10:26
2002.09.12
ыви


1-35657
Дмитрий Болотов
2002-08-29 23:50
2002.09.12
Экспорт из StringList в Excel 97/2000





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский