информационная безопасность
без паники и всерьез
 подробно о проекте
Где водятся OGRыЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 PHP2Shell начали эксплуатировать... 
 Четыре уязвимости Plex объединяют... 
 Вредоносный релиз LiteLLM 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
[Delphi] Деактивация кнопки закрытия формы 01.09.04 09:00  
Автор: n0xi0uzz <Черкасов Виктор> Статус: Member
<"чистая" ссылка>
Подскажите плз, как деактивировать кнопочку закрытия формы (это с крестиком которая), а лучше - вообще убрать?
Да, и чтобы комбинация Alt+F4 не работала желательно...)
[Delphi] Примерно так (updated) 01.09.04 09:39  
Автор: HandleX <Александр М.> Статус: The Elderman
Отредактировано 01.09.04 10:08  Количество правок: 5
<"чистая" ссылка>
> Подскажите плз, как деактивировать кнопочку закрытия формы
> (это с крестиком которая), а лучше - вообще убрать?
M$ считает, что окно с заголовком, но без кнопки закрытия — плохой тон ;-)

procedure TForm1.Button1Click(Sender: TObject);
Var anIcons: TBorderIcons;
begin
  anIcons := BorderIcons;
  Exclude(anIcons, biSystemMenu);
  BorderIcons := anIcons;
end;

---

Это же свойство (BorderIcons) можно выправить в редакторе свойств формы, установив там biSystemMenu: False.

> Да, и чтобы комбинация Alt+F4 не работала желательно...)
Способ 1: (техничный, хакерский) ;-)
Вешай свой обработчик на WM_SYSCOMMAND, и когда поймаешь сообшение с параметром SC_CLOSE, не пускай его дальше (системному обработчику), а просто выйди из процедуры.

Способ 2: (Дельфийский, ламерский) ;-)
Создаёшь обработчик события формы OnCloseQuery.
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  CanClose := False;
end;

---
1





Рейтинг@Mail.ru


  Copyright © 2001-2026 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach