Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: WinAPI и системное программирование > зафиксировать место для формы


Автор: Gudzik11 25.4.2014, 09:21
Здравствуйте не знаю как правельно обяснить что мнке нужно ?
У меня форма находитса над понелью задачь и мне нужно чтоб другие программы при открытии на весь экран не перекрывала мою форму тоесть как на картинке.
 

Автор: -Сергей- 28.4.2014, 11:15
Вам нужно изменить область рабочего стола. Как то так:
Код

var
R: Trect;
begin
  // Получим текущую область
  SystemParametersInfo( SPI_GETWORKAREA, 0, @R, 0 );
  //Изменяем под наши нужды
  R.Height :=  R.Height - Form1.Height;
  // Устанавливаем новое значение и отправляем изменения выполняющимся приложениям
  SystemParametersInfo( SPI_SETWORKAREA, 0, @R, SPIF_SENDCHANGE );
end;

Автор: Gudzik11 28.4.2014, 13:50
спасибо 

Автор: Gudzik11 1.5.2014, 15:45
Подскажите как сделат чтоб по нажатию на win+D  и кнопки в windows окно осталось всегда видимым.
Перерыл уже весь интернет но решения внятного не где не нашол. 

Автор: -Сергей- 12.5.2014, 06:02
стиль формы должен быть fsStayOnTop
"главное" окно должно быть спрятано.

ставим стиль формы в fsStayOnTop, в OnShow добавляем:

Код

procedure TForm1.FormShow(Sender: TObject);
begin
  ShowWindow(Application.Handle, SW_HIDE);
end;


или
http://forum.vingrad.ru/faq/topic-41584.html

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)