Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.07.2011, 21:17   #1
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию FstayOnTop положение формы, как в AIMP

Вобщем, есть форма (не главная).
Form2 допустим.

Мне нужно, что бы она всегда находилась на экране.
Тоесть даже тогда, когда потерян фокус.

Пробовал ставить форме FstayOnTop, но это не помогает.
Форма все равно переодически пропадает с экрана.

Нечто подобное реализовано в плеере Aimp.


Там мини-окошко всегда отображается на экране.
Где бы не был фокус.

Помогите реализовать.
Moonquake

Последний раз редактировалось phphel; 30.07.2011 в 21:21.
phphel вне форума Ответить с цитированием
Старый 30.07.2011, 23:17   #2
dmitriegorovih
Ещё не
Форумчанин
 
Аватар для dmitriegorovih
 
Регистрация: 04.01.2010
Сообщений: 517
По умолчанию

А если вот так
Код:
...
type
  TForm2 = class(TForm)
procedure CreateParams(var Params: TCreateParams); override;
...
 procedure Tform2.CreateParams(var Params: TCreateParams);
 begin
 inherited CreateParams(Params);
 Params.ExStyle:= Params.ExStyle or WS_EX_TOPMOST;
Params.WndParent:= GetDesktopWindow;
 end;
Да и не забудь выставить у формы значение fsStayOnTop
Воображение важнее, чем знания. (Albert Einstein)
dmitriegorovih вне форума Ответить с цитированием
Старый 30.07.2011, 23:44   #3
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию

Сделал, проблема осталась.

К примеру если нажать свернуть все окна.
Аимп то не сворачивается.
Moonquake
phphel вне форума Ответить с цитированием
Старый 30.07.2011, 23:55   #4
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,183
По умолчанию

А так?
Код:
  SetWindowPos(Handle,
    HWND_TOPMOST,
    Left,
    Top,
    Width,
    Height,
    SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
Alter вне форума Ответить с цитированием
Старый 30.07.2011, 23:59   #5
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию

Alter, ваш вариант также не подходит.
Немного погуглив выяснилось, что это просто WinApi аналог FsStayOnTop

Проблема не решена...
Moonquake

Последний раз редактировалось phphel; 31.07.2011 в 00:09.
phphel вне форума Ответить с цитированием
Старый 31.07.2011, 00:07   #6
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Может тогда, OnPaint?
Но мне кажется, что всё равно ничего хорошего не выйдет...
пропробуйте тем не менее
Вадим Мошев вне форума Ответить с цитированием
Старый 31.07.2011, 00:12   #7
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию

А что именно в OnPaint?
Мне бы хоть грубый вариант, с тем же таймером, главное что бы работало, заколебался с этим вопросом уже..
Moonquake
phphel вне форума Ответить с цитированием
Старый 31.07.2011, 01:04   #8
dmitriegorovih
Ещё не
Форумчанин
 
Аватар для dmitriegorovih
 
Регистрация: 04.01.2010
Сообщений: 517
По умолчанию

Цитата:
Сделал, проблема осталась.

К примеру если нажать свернуть все окна.
Аимп то не сворачивается.
Да забыл добавить, BorderStyle надо изменить у формы например на вот это
bsSizeToolWin
Воображение важнее, чем знания. (Albert Einstein)
dmitriegorovih вне форума Ответить с цитированием
Старый 31.07.2011, 16:17   #9
phphel
Форумчанин
 
Аватар для phphel
 
Регистрация: 12.07.2010
Сообщений: 249
По умолчанию

O, спасибо.
А если понадобится вернуть старое положение формы, что писать?
Moonquake
phphel вне форума Ответить с цитированием
Старый 31.07.2011, 18:01   #10
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию

там рандомное появление полной формы, т.е. часть окна скрывается, если получится чуть позже выложу, прост не помню как именно писать
bulldog5293 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
прокрутка текста в Tmemo как в AIMP,QIP Человек_Борща Общие вопросы Delphi 0 15.02.2011 19:54
Как программно изменить положение картинки? quarty Общие вопросы Delphi 2 03.01.2011 00:55
Как содрать URL для AIMP Rin Свободное общение 3 03.08.2010 16:26
положение формы blackstersl Общие вопросы Delphi 5 04.06.2009 12:59
как узнать положение CheckBox в StringGrid Lisi4ka Общие вопросы Delphi 1 04.05.2009 20:58