Este é um post disponível para assinantes MVPou para quem possui Créditos DevMedia. Clique aqui para saber mais!
Artigo Clube Delphi Edição 28 - Menus Personalizados com CLX
Artigo da Revista Clube Delphi Edição 28.

Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML.
Menus Personalizados com CLX
Use a Qt diretamente para alterar a aparência de elementos
Com o Kylix, a Borland introduziu sua nova biblioteca de componentes, a CLX, baseada na Qt, uma biblioteca de classes desenvolvida em C++ pela companhia norueguesa TrollTech (www.trolltech.com). A Qt é uma biblioteca portável, disponível para diversos ambientes, como Windows, Linux, Solaris, MacOS e até mesmo para PalmOS.
Qt e Portabilidade
Ao contrário da VCL, inteiramente baseada nos controles do Windows, a Qt usa apenas algumas primitivas simples (desenho de linhas, pixels) e desenha inteiramente seus controles. Isso traz a portabilidade – a maior parte da biblioteca é igual para todas as plataformas, bastando apenas mudar pequenas porções de código dependentes da plataforma que se está usando.
Se fosse usado um enfoque semelhante ao da VCL, tudo o que se refere a controles (EditBoxes, ComboBoxes) deveria ser reescrito ao mudar de plataforma. Além disso, a Qt pode ter a aparência que quiser, pois não está ligada ao sistema operacional. Quando você roda uma aplicação que usa a VCL em diferentes versões do Windows, ela toma a forma das demais aplicações daquela versão. Isso não acontece com uma aplicação Qt – você pode ter uma aplicação rodando em Windows com aparência de uma aplicação Linux e vice-versa, ou mesmo ter o aspecto de algo completamente diferente.
Com uma aplicação Qt, você pode ter uma aplicação rodando em Windows com aparência de uma aplicação Linux e vice-versa, ou mesmo ter o aspecto de algo completamente diferente
Vantagens e desvantagens
Ao lado destas vantagens, a Qt tem a desvantagem de não usar tudo o que o sistema operacional oferece de seus controles. Embora sejam semelhantes ao do sistema operacional, terem pequenas diferenças em relação a eles, e não aderirem aos novos padrões que vão aparecendo. Deve-se redesenhar os controles Qt para que eles tenham aparência semelhante aos do Windows XP, por exemplo.
Sem dúvida nenhuma, a grande vantagem da CLX em relação à VCL é a portabilidade – uma aplicação escrita para Linux, no Kylix, pode ser transportada para o Windows, no Delphi 6, bastando apenas recompilá-la. E, se um dia a Borland decidir portar o Delphi para MacOS, Solaris ou PalmOS, as aplicações poderão ser facilmente transportadas para estes ambientes.
A flexibilidade da Qt permite mudar inteiramente a aparência da aplicação em tempo de execução escrevendo apenas uma linha de código
Outra vantagem do uso da Qt na criação da CLX é possibilitar a mudança de aparência da aplicação: podemos desenhar os controles da maneira que queremos. Esta flexibilidade chega ao ponto de podermos mudar inteiramente a aparência da aplicação em tempo de execução escrevendo apenas uma linha de código.
Esta característica da Qt foi exposta pelos projetistas da Borland e permitem personalizar o desenho dos controles, mudando radicalmente sua aparência, ou apenas dando toques pessoais, com o que os engenheiros da Borland chamaram de Styles (estilos).
"
Este é um post disponível para assinantes MVPou para quem possui Créditos DevMedia. Clique aqui para saber mais!
Bruno Sonnino
Bruno Sonnino (sonnino@clubedelphi.net) é Engenheiro pela Escola Politécnica da USP e desenvolvedor Delphi desde a sua primeira versão. É autor de diversos artigos na revistas ClubeDelphi e Delphi Informant, americana e desenvolveu utilitários para a revista PCMagazine US. É autor dos livros "Delphi...



