Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 25.08.2009, 23:24
mskvkin mskvkin вне форума
Новичок
 
Регистрация: 31.08.2008
Сообщения: 99
Репутация: 10
По умолчанию Помогите разобраться

мне необходимо заблокировать перемещение формы за ее заголовок и заблокировать нажатия на системные кнопки меню пишу на delphi 2009 сколько на форумах повычитывал у меня не работает или я что то не так делаю???

Помогите пожалуйста!!!
Заранее огромное спасибо!!!
Ответить с цитированием
  #2  
Старый 26.08.2009, 03:22
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

"перемещение формы за ее заголовок"- что это значит?
Установи в св-ах Form1 -> BorderIcons нужные пункты в False и запрети закрытие формы:
Код:
procedure Form1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action :=caNone;
end;
Ответить с цитированием
  #3  
Старый 26.08.2009, 07:28
mskvkin mskvkin вне форума
Новичок
 
Регистрация: 31.08.2008
Сообщения: 99
Репутация: 10
По умолчанию

в том то и дело что кнопки должны иметь видимость равной True
а мне надо отключить события при нажатии на них

Мне надо запретить перемещение формы за ее заголовок
Ответить с цитированием
  #4  
Старый 26.08.2009, 09:08
Nyctos Kasignete Nyctos Kasignete вне форума
Активный
 
Регистрация: 29.03.2009
Сообщения: 300
Репутация: 94
По умолчанию

Код:
...

type
  TForm1 = class(TForm)
  private
    { Private declarations }
    procedure WMSYSCOMMAND(var Msg: TMessage); message WM_SYSCOMMAND;
    procedure WMWINDOWPOSCHANGING(var Msg: TMessage); message WM_WINDOWPOSCHANGING;
  public
    { Public declarations }
  end;

....


procedure TForm1.WMSYSCOMMAND(var Msg: TMessage);
begin
  if (Msg.WParam <> SC_MAXIMIZE) and
     (Msg.WParam <> SC_MINIMIZE) and
     (Msg.WParam <> SC_CLOSE) then inherited;
end;

procedure TForm1.WMWINDOWPOSCHANGING(var Msg: TMessage);
var
  wp: PWindowPos;
begin
  wp := PWindowPos(Pointer(Msg.LParam));
  wp^.flags := wp^.flags or SWP_NOMOVE;
  Msg.LParam := Integer(wp);
  inherited;
end;
Ответить с цитированием
  #5  
Старый 26.08.2009, 09:21
mskvkin mskvkin вне форума
Новичок
 
Регистрация: 31.08.2008
Сообщения: 99
Репутация: 10
По умолчанию

Огромное спасибо
Ответить с цитированием
  #6  
Старый 26.08.2009, 09:24
mskvkin mskvkin вне форума
Новичок
 
Регистрация: 31.08.2008
Сообщения: 99
Репутация: 10
По умолчанию

А как запретить вызов системного меню при нажатии на иконку в заголовке
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 20:07.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025