Desabiltar menus e botoes do ToolBar
Caras, tenho um form MDI que possui um ToolBar e preciso desabiltar os botoes integrantes deste ToolBar. Usei o seguinte código:
For c := 0 To Self.ComponentCount - 1 Do
begin
If (Components[c].ClassName = ´TMenuItem´)Then
begin
If(Components[c].Tag = 1) Then
TMenuItem(Components[c]).Enabled := False;
end;
If(Components[c].Tag = 1)Then
TControl(Components[c]).Enabled := False;
End;
Isso serve para desabilitar menus (através da classe e verificando a propriedade Tag) e botoes do ToolBar (verificando a propriedade Tag).Dessa forma ocorre que ou executa o procedimento para desabilitar os menus ou os botões. Mas o que eu quero é desbilitar todos.
Como eu posso fazer isso?
Valeu!!!
For c := 0 To Self.ComponentCount - 1 Do
begin
If (Components[c].ClassName = ´TMenuItem´)Then
begin
If(Components[c].Tag = 1) Then
TMenuItem(Components[c]).Enabled := False;
end;
If(Components[c].Tag = 1)Then
TControl(Components[c]).Enabled := False;
End;
Isso serve para desabilitar menus (através da classe e verificando a propriedade Tag) e botoes do ToolBar (verificando a propriedade Tag).Dessa forma ocorre que ou executa o procedimento para desabilitar os menus ou os botões. Mas o que eu quero é desbilitar todos.
Como eu posso fazer isso?
Valeu!!!
Diorgenes175
Curtidas 0
Respostas
Edkardoso
07/05/2004
Porque não desabilita simplesmente o componente, ao invés de desablitar botão por botão ?
ActionToolBar1.Enabled:=false
um abraço !
ActionToolBar1.Enabled:=false
um abraço !
GOSTEI 0
Diorgenes175
07/05/2004
Por que eu não quero desabilitar todos os botoes deste componente. São desabilitados apenas dois botoes, pois isso serve para aplicar restrições ao tipo de usuario. Compreende?!
Pode me ajudar nessa... O que tá ocorrendo é algum conflito entre os objetos que eu nao consigo corrigir...
Valeu!!!
Diórgenes Tavares
Gravataí - RS
Pode me ajudar nessa... O que tá ocorrendo é algum conflito entre os objetos que eu nao consigo corrigir...
Valeu!!!
Diórgenes Tavares
Gravataí - RS
GOSTEI 0
Edkardoso
07/05/2004
Sendo assim meu caro, acho que a rotina abaixo deve resolver seu problema. Ela vai desabilitar todos os botões que tiverem o valor de Tag iguais a 0. Por favor me responda se funcionou.
Procedure TfrmPrincipal.FormShow(Sender: TObject);
var i:integer;
begin
for i:=0 to (ActionToolBar1.ComponentCount -2) do
if ActionToolBar1.ActionControls[i].Tag =0 then
ActionToolBar1.ActionControls[i].Enabled:=false;
end;
Espero ter contribuído para o seu sucesso!
Um abraço,
Eduardo
Procedure TfrmPrincipal.FormShow(Sender: TObject);
var i:integer;
begin
for i:=0 to (ActionToolBar1.ComponentCount -2) do
if ActionToolBar1.ActionControls[i].Tag =0 then
ActionToolBar1.ActionControls[i].Enabled:=false;
end;
Espero ter contribuído para o seu sucesso!
Um abraço,
Eduardo
GOSTEI 0
Diorgenes175
07/05/2004
Antes de vc enviar este código eu já tinha conseguido desbilitar botoes e menus...
Valeu...
Valeu...
GOSTEI 0