Como habilitar e desabilitar o botão fechar do formulário?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| // É necessário estar declarado Math e Windows na seção uses.
// Em versões mais recentes, declare System.Math e Winapi.Windows.
procedure SetEnableButtonClose(Form : TForm; Enable: Boolean);
var
Flag: UINT;
AppSysMenu: THandle;
begin
AppSysMenu := GetSystemMenu(Form.Handle, False);
Flag := IfThen(Enable, MF_ENABLED, MF_DISABLED);
EnableMenuItem(AppSysMenu, SC_CLOSE, MF_BYCOMMAND or Flag);
end;
// Exemplos de uso
// Exemplo de uso para habilitar
procedure TForm1.Button1Click(Sender: TObject);
begin
SetEnableButtonClose(Self, True);
end;
// Exemplo de uso para desabilitar.
procedure TForm1.Button2Click(Sender: TObject);
begin
SetEnableButtonClose(Self, False);
end; |
// É necessário estar declarado Math e Windows na seção uses.
// Em versões mais recentes, declare System.Math e Winapi.Windows.
procedure SetEnableButtonClose(Form : TForm; Enable: Boolean);
var
Flag: UINT;
AppSysMenu: THandle;
begin
AppSysMenu := GetSystemMenu(Form.Handle, False);
Flag := IfThen(Enable, MF_ENABLED, MF_DISABLED);
EnableMenuItem(AppSysMenu, SC_CLOSE, MF_BYCOMMAND or Flag);
end;
// Exemplos de uso
// Exemplo de uso para habilitar
procedure TForm1.Button1Click(Sender: TObject);
begin
SetEnableButtonClose(Self, True);
end;
// Exemplo de uso para desabilitar.
procedure TForm1.Button2Click(Sender: TObject);
begin
SetEnableButtonClose(Self, False);
end;
Post Views: 6.702
-
InfusTec
-
- 0 comentários
- 10 de março de 2015