Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Lazarus, FreePascal, Kylix, etc. (https://www.clubdelphi.com/foros/forumdisplay.php?f=14)
-   -   Activar/Desactivar Elementos de un TMainMenu (https://www.clubdelphi.com/foros/showthread.php?t=83228)

daragor 23-05-2013 16:47:04

Activar/Desactivar Elementos de un TMainMenu
 
Hola compañeros, necesito que me guien .. como hago para desactivar o activar un elemento determinado de un menu principal en lazarus, estuve buscando pero doy con lo que necesito. Por ejemplo si ocurre una determinada accion .. debo activar un elemento del menu que se encuentra disabled desde el inicio. Creo q se entiende y espero me puedan ayudar... NO se como usar el tema items xq usa una variable integer del componente y no tengo idea cual es el nro. del componente q deseo poner como enabled.

Gracias!!!!

ecfisa 23-05-2013 17:56:14

Hola daragor.
Cita:

como hago para desactivar o activar un elemento determinado de un menu principal en lazarus
La forma más simple es desde el propio TMenuItem, por ejemplo
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  MenuItem2.Enabled := False;
end;

// O de otro modo:
procedure TForm1.Button2Click(Sender: TObject);
var
  aName : string;
begin
  aName := 'MenuItem2';
  TMenuItem(FindComponent(aName)).Enabled:= False;
end;
También podes acceder desplazándote por la propiedad Items del TMenuItem, por ejemplo:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  i,j: Integer;
begin
  for i:= 0 to MainMenu1.Items.Count-1 do
     for j:= 0 to MainMenu1.Items[i].Count-1 do
       MainMenu1.Items[i].Items[j].Enabled := False;  
end;
Espero haber entendido lo que buscabas.

Saludos. :)

daragor 23-05-2013 23:55:47

claro que me sirvio ecfisa, sobre todo el primero.. entendi que debemos tratar a cada elemento del menu como un menú.. por su nombre. muchas gracias como siempre!


La franja horaria es GMT +2. Ahora son las 22:31:39.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi