Virtual Treeview
Melhor gerenciamento de árvore para seu aplicativo de software
Mais de uma década de desenvolvimento criou um dos controles de treeview Delphi mais flexíveis e avançados disponíveis hoje! O Virtual Treeview não lê os dados que gerencia, exceto seu tamanho, nem mesmo as legendas de um nó. Tudo é recuperado do aplicativo por meio de eventos ou descendentes por métodos substituídos.
Pegada na memória extremamente rápida e pequena
Adicionar um milhão de nós leva menos de um segundo, graças ao paradigma virtual. Apenas 56 bytes são necessários por nó pelo TVirtualStringTree nas compilações do Win32.
Suporte a temas Windows e VCL
Os temas da VCL e o tema do Windows Explorer são suportados imediatamente, juntamente com uma escala de dpi alta.
Altamente personalizável
Quase todos os aspectos dos controles podem ser personalizados e a pintura pode ser interceptada em todas as etapas.
Rico em recursos
- Há um evento TBaseVirtualTree.OnHint para exibir dicas específicas do nó.
- Há um evento TBaseVirtualTree.OnGetHelpContext para recuperar IDs de contexto de ajuda específicos do nó. Isso inclui o controle automático de árvore e janela, como é chamado quando o usuário pressiona F1.
- Há um evento TBaseVirtualTree.OnGetPopupMenu para recuperar menus pop-up específicos do nó, incluindo o percurso automático da árvore.
- Os botões do meio e direito do mouse podem ser usados além do botão esquerdo e suportam todas as funções mapeáveis ao botão esquerdo (arrastar, selecionar etc.). Esses botões alternativos podem ser trocados, é claro.
- Uma imagem de fundo fixa pode ser usada na árvore e pode receber um certo deslocamento, por exemplo para simular planos de fundo compartilhados.
- As árvores de sequência suportam o texto estático que aparece após a legenda de um nó (em todas as colunas) e que pode ser formatado de forma diferente da legenda, mas não pode ser editado, selecionado etc.
- Um modo de coluna de extensão automática é suportado. Ele permite que uma coluna ocupe mais espaço para sua legenda se houver colunas vazias à sua direita. Isso evita o recorte de legendas longas e ainda permite o uso de várias colunas.
- Um nó pode ser selecionado e editado em todas as colunas (isso é selecionável), tornando o Virtual Treeview um tipo de grade também. A tecla Tabulador pode ser usada para alternar o foco entre as células. Existe uma opção especial (toGridExtensions) para oferecer suporte a tarefas específicas da grade.
- Os nós podem ter alturas individuais e o alinhamento vertical das imagens e linhas de um nó pode ser ajustado individualmente.
- O Virtual Treeview expõe seus estados internos, como arrastar ou editar eventos pendentes, seleção múltipla ou expansão em andamento. Usando essas informações, um aplicativo pode otimizar sua execução de código (atualizações de estado etc.).
- A classificação de um nó é suportada por meio de um retorno de chamada de comparação definido pelo aplicativo. Além disso, uma árvore pode ser definida como "classificação automática".
- As dicas podem conter várias linhas de texto e espelhar o alinhamento e a direcionalidade do nó ou coluna para a qual eles são exibidos. Para sua animação, está disponível o deslizamento e a mistura alfa.
- TBaseVirtualTree.DefaultNodeHeight e TVirtualStringTree.DefaultText podem ser usados para evitar a configuração de muitos nós explicitamente com o mesmo valor inicial.
- A implementação de colunas do Virtual Treeview também permite colunas fixas, tornando-o uma boa substituição da grade.
Usabilidade ideal
- O Virtual Treeview é extremamente rápido. Adicionar um milhão de nós leva apenas 700 milissegundos!
- O Virtual Treeview possui um espaço de memória muito pequeno. Ao alocar apenas 60 bytes por nó (na árvore de cadeias, a árvore base usa apenas 56 bytes), está bem preparado para armazenar um milhão deles.
- O Virtual Treeview é otimizado para acesso de alta velocidade. Leva apenas 0,5 segundos para percorrer um milhão de nós, dependendo dos estados de validação e validação necessários.
- A seleção múltipla é suportada, incluindo seleção restrita, para que apenas nós de um determinado nível inicial possam ser selecionados. Muito esforço foi colocado no desenvolvimento de algoritmos eficazes, por exemplo, para modificar um conjunto de seleção já grande, mantendo a interatividade.
- O desenho da árvore inteira em um bitmap ou na impressora é suportado pelo método TBaseVirtualTree.PaintTree central. As mensagens WM_PRINT e WM_PRINTCLIENT são tratadas corretamente. Isso permite, por exemplo, desenhar uma árvore em um bitmap (por exemplo, para janelas em camadas ou implementar suspensos animados de controles que usam VT como controle suspenso).
- Pesquisa incremental com várias opções e direções está disponível.
- A rolagem automática da área do cliente ocorre quando o mouse está próximo das bordas, enquanto arrasta e seleciona o desenho (seleção múltipla).
Requisitos de sistema
Compatível com todas as versões atuais do Windows (32 e 64 bits).
Topo