Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3101 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Aproveitando a migração do Delphi 7 para Seattle, gostaria de migrar os tradicionais menus para menus com ribbon. Porém estou tendo problemas com a visualização da imagens que saem cortadas.

Antes de inserir as imagens ajustei as propriedades Height e Widht do imagelist para 64. Adicionei um ActionManager e relacionei o ImageList nas propriedades Images e LargeImages, em cada Actions que criei removi o conteúdo da propriedade Caption. E por fim em cada ActionClientItem, alterei a propriedade ButtonSize para bsLarge.

No ActionManager tento mudar o Style para Platform Default, mas acredito que por estar relacionado ao Ribbon não funciona essa mudança.

Segue imagem para visualizar o ocorrido, se alguém tiver alguma dica, agradeço antecipadamente.

 

Sem título.png

  • Membros Pro
Postado

Boa noite @Juliomar Marchetti, deu certo as imagens, muito obrigado pelo auxílio. Agora precisava de mais uma ajuda e se não for possível devido as regras do fórum entre outras, sem problemas e ressentimentos.

Para eu fazer a ativação e desativação em tempo de execução de uma action, somente consegui informando dessa forma:

 

ActionManager1.Actions[17].Enabled := True;

 

Porém preciso identificar exatamente qual o botão quero desativar/ativar e encontrei apenas a função FindItemByAction, mas a propriedade ID ou Items dessa função me retorna o índice do botão de cada RibbonGroup, desta forma não dá certo, pois, esse índice é diferente do índice do Actions de ActionManager.

 

Então pensei em cada Action, preencher a propriedade TAG para identificação desse índice e desativar/ativar dessa forma:

 

ActionManager1.Actions[ActionManager1.FindItemByAction(Marcas).Tag].Enabled := True;

 

Mas a cada manutenção em meus menus, vou precisar rever e conferir todas essas TAG´s para que elas coincidam com o índice das actions.

 

Você teria alguma dica para ativar/desativar essas actions em tempo de execução de outra forma?

 

Muito obrigado.

Postado

Boa tarde a todos.

Tente desta maneira, é assim que uso.

 for I := 0 to ActionManager1.ActionCount - 1 do
   if ActionManager1.Actions.Name = 'NomedaAction' then
     TAction(ActionManager1.Actions).Enabled := True ;

espero ter ajudado.

Abraços

Miguel

 

  • Curtir 2
  • Este tópico foi criado há 3101 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.