Topic: Крестик
Доброе время суток. Есть ли способ на определённой форме спрятать крестик (тот что закрывает форму) Ну и сразу со всеми прочими кнопками тех что рядом сворачивания окна.
My Visual Database → Russian → Крестик
Доброе время суток. Есть ли способ на определённой форме спрятать крестик (тот что закрывает форму) Ну и сразу со всеми прочими кнопками тех что рядом сворачивания окна.
Доброе время суток. Есть ли способ на определённой форме спрятать крестик (тот что закрывает форму) Ну и сразу со всеми прочими кнопками тех что рядом сворачивания окна.
"Крестик", конечно, можно спрятать, но любую форму можно закрыть сочетанием клавиш Alt+F4, поэтому предотвратить закрытие формы пользователем, спрятав системные кнопки, в MVD на данный момент нельзя.
Если нельзя, но очень хочется - значит можно.
procedure Form1_OnCloseQuery (Sender: TObject; Action: string);
begin
if Action = 'true' then Action:= 'false';
end;
begin
Form1.BorderIcons:= Form1.BorderIcons - biSystemMenu;
Form1.Caption:= 'Форму можно закрыть в Диспетчере задач';
Form1.OnCloseQuery:= @Form1_OnCloseQuery;
end.
ПРЕДУПРЕЖДЕНИЕ! Не запускайте скрипт, если не знакомы с "Диспетчером задач"!
Если нельзя, но очень хочется - значит можно.
procedure Form1_OnCloseQuery (Sender: TObject; Action: string); begin if Action = 'true' then Action:= 'false'; end; begin Form1.BorderIcons:= Form1.BorderIcons - biSystemMenu; Form1.Caption:= 'Форму можно закрыть в Диспетчере задач'; Form1.OnCloseQuery:= @Form1_OnCloseQuery; end.
ПРЕДУПРЕЖДЕНИЕ! Не запускайте скрипт, если не знакомы с "Диспетчером задач"!
MVD - это сокровищница недокументированных возможностей А какие ещё обработчики можно таким образом подвесить на TAForm ?
Думаю почти все, которые присутствуют в Delphi.
А какой принцип описания параметров в обработчике событий? Ведь типы параметров в процедурах MVD и Delphi не всегда совпадают. В частности в Delphi в OnCloseQuery тип второго параметра Boolean, а в MVD - String.
А какой принцип описания параметров в обработчике событий? Ведь типы параметров в процедурах MVD и Delphi не всегда совпадают. В частности в Delphi в OnCloseQuery тип второго параметра Boolean, а в MVD - String.
Просто этот пример немного неправильный, правильней будет так
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
CanClose := False;
end;
А работает он потому что все параметры передаются как Variant, и просто случилось преобразование 'true' в настоящее True
My Visual Database → Russian → Крестик
Powered by PunBB, supported by Informer Technologies, Inc.
Theme Hydrogen by Kushi